[8u] RFR for backport of JDK-8026331: hs_err improvement: Print if we have seen any OutOfMemoryErrors or StackOverflowErrors

Shafi Ahmad shafi.s.ahmad at oracle.com
Wed Mar 7 10:08:33 UTC 2018


Hi David,

Thank you for the review.

Please find below updated webrev.
http://cr.openjdk.java.net/~shshahma/8026331/webrev.01


Regards,
Shafi


> -----Original Message-----
> From: David Holmes
> Sent: Tuesday, March 06, 2018 6:09 PM
> To: Shafi Ahmad <shafi.s.ahmad at oracle.com>; hotspot-
> dev at openjdk.java.net
> Cc: Christian Tornqvist <christian.tornqvist at oracle.com>; Coleen Phillimore
> <coleen.phillimore at oracle.com>
> Subject: Re: [8u] RFR for backport of JDK-8026331: hs_err improvement: Print
> if we have seen any OutOfMemoryErrors or StackOverflowErrors
> 
> Hi Shafi,
> 
> This seems like an accurate backport of the error reporting enhancements.
> 
> Copyright years need updating to 2018.
> 
> Thanks,
> David
> 
> On 6/03/2018 6:55 PM, Shafi Ahmad wrote:
> > Hi All,
> >
> > Could someone please review it.
> >
> > Regards,
> > Shafi
> >
> >
> >> -----Original Message-----
> >> From: Shafi Ahmad
> >> Sent: Tuesday, February 06, 2018 11:27 AM
> >> To: hotspot-dev at openjdk.java.net
> >> Cc: Stephen Fitch <stephen.fitch at oracle.com>
> >> Subject: RE: [8u] RFR for backport of JDK-8026331: hs_err
> >> improvement: Print if we have seen any OutOfMemoryErrors or
> >> StackOverflowErrors
> >>
> >> Hi,
> >>
> >> Could someone please review it.
> >>
> >> Regards,
> >> Shafi
> >>
> >>> -----Original Message-----
> >>> From: Shafi Ahmad
> >>> Sent: Monday, January 29, 2018 10:16 AM
> >>> To: hotspot-dev at openjdk.java.net
> >>> Subject: RE: [8u] RFR for backport of JDK-8026331: hs_err improvement:
> >>> Print if we have seen any OutOfMemoryErrors or StackOverflowErrors
> >>>
> >>> 2nd try...
> >>>
> >>> Regards,
> >>> Shafi
> >>>
> >>>> -----Original Message-----
> >>>> From: Shafi Ahmad
> >>>> Sent: Wednesday, January 24, 2018 3:16 PM
> >>>> To: hotspot-dev at openjdk.java.net
> >>>> Subject: [8u] RFR for backport of JDK-8026331: hs_err improvement:
> >>>> Print if we have seen any OutOfMemoryErrors or StackOverflowErrors
> >>>>
> >>>> Hi,
> >>>>
> >>>> Please review the backport of bug: " JDK-8026331: hs_err
> improvement:
> >>>> Print if we have seen any OutOfMemoryErrors or StackOverflowErrors"
> >>>> to
> >>>> jdk8u- dev.
> >>>>
> >>>> Please note that this is not a clean backport as I got below
> >>>> conflicts
> >>>> -
> >>>>
> >>>> hotspot$ find ./ -name "*.rej" -exec cat {} \;
> >>>> --- metaspace.cpp
> >>>> +++ metaspace.cpp
> >>>> @@ -3132,10 +3132,21 @@
> >>>>     initialize_class_space(metaspace_rs);
> >>>>
> >>>>     if (PrintCompressedOopsMode || (PrintMiscellaneous && Verbose))
> {
> >>>> -    gclog_or_tty->print_cr("Narrow klass base: " PTR_FORMAT ",
> Narrow
> >>>> klass shift: %d",
> >>>> -                            p2i(Universe::narrow_klass_base()),
> >>>> Universe::narrow_klass_shift());
> >>>> -    gclog_or_tty->print_cr("Compressed class space size: "
> SIZE_FORMAT
> >> "
> >>>> Address: " PTR_FORMAT " Req Addr: " PTR_FORMAT,
> >>>> -                           compressed_class_space_size(),
> >> p2i(metaspace_rs.base()),
> >>>> p2i(requested_addr));
> >>>> +    print_compressed_class_space(gclog_or_tty, requested_addr);
> >>>> +  }
> >>>> +}
> >>>> +
> >>>> +void Metaspace::print_compressed_class_space(outputStream* st,
> >>>> +const
> >>>> char* requested_addr) {
> >>>> +  st->print_cr("Narrow klass base: " PTR_FORMAT ", Narrow klass
> shift:
> >>> %d",
> >>>> +               p2i(Universe::narrow_klass_base()),
> >>>> Universe::narrow_klass_shift());
> >>>> +  if (_class_space_list != NULL) {
> >>>> +    address base =
> >>>> + (address)_class_space_list->current_virtual_space()-
> >>>>> bottom();
> >>>> +    st->print("Compressed class space size: " SIZE_FORMAT " Address: "
> >>>> PTR_FORMAT,
> >>>> +                 compressed_class_space_size(), p2i(base));
> >>>> +    if (requested_addr != 0) {
> >>>> +      st->print(" Req Addr: " PTR_FORMAT, p2i(requested_addr));
> >>>> +    }
> >>>> +    st->cr();
> >>>>     }
> >>>>   }
> >>>>
> >>>> --- universe.cpp
> >>>> +++ universe.cpp
> >>>> @@ -781,27 +781,24 @@
> >>>>     return JNI_OK;
> >>>>   }
> >>>>
> >>>> -void Universe::print_compressed_oops_mode() {
> >>>> -  tty->cr();
> >>>> -  tty->print("heap address: " PTR_FORMAT ", size: " SIZE_FORMAT "
> >>>> MB",
> >>>> +void Universe::print_compressed_oops_mode(outputStream* st) {
> >>>> +  st->print("heap address: " PTR_FORMAT ", size: " SIZE_FORMAT "
> >>>> +MB",
> >>>>                 p2i(Universe::heap()->base()), Universe::heap()-
> >>>>> reserved_region().byte_size()/M);
> >>>>
> >>>> -  tty->print(", Compressed Oops mode: %s",
> >>>> narrow_oop_mode_to_string(narrow_oop_mode()));
> >>>> +  st->print(", Compressed Oops mode: %s",
> >>>> narrow_oop_mode_to_string(narrow_oop_mode()));
> >>>>
> >>>>     if (Universe::narrow_oop_base() != 0) {
> >>>> -    tty->print(": " PTR_FORMAT, p2i(Universe::narrow_oop_base()));
> >>>> +    st->print(": " PTR_FORMAT, p2i(Universe::narrow_oop_base()));
> >>>>     }
> >>>>
> >>>>     if (Universe::narrow_oop_shift() != 0) {
> >>>> -    tty->print(", Oop shift amount: %d", Universe::narrow_oop_shift());
> >>>> +    st->print(", Oop shift amount: %d",
> >>>> + Universe::narrow_oop_shift());
> >>>>     }
> >>>>
> >>>>     if (!Universe::narrow_oop_use_implicit_null_checks()) {
> >>>> -    tty->print(", no protected page in front of the heap");
> >>>> +    st->print(", no protected page in front of the heap");
> >>>>     }
> >>>> -
> >>>> -  tty->cr();
> >>>> -  tty->cr();
> >>>> +  st->cr();
> >>>>   }
> >>>>
> >>>> Webrev: http://cr.openjdk.java.net/~shshahma/8026331/webrev.00/
> >>>> Jdk9 bug: https://bugs.openjdk.java.net/browse/JDK-8026331
> >>>> Original patch pushed to jdk9:
> >>>> http://hg.openjdk.java.net/jdk9/jdk9/hotspot/rev/cf5a0377f578
> >>>>
> >>>> Test:  Run jprt -testset hotspot and jtreg - hotspot/test
> >>>>
> >>>> Regards,
> >>>> Shafi


More information about the hotspot-dev mailing list