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

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: hserr 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: hserr >> 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: hserr 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: hserr improvement: >>>> Print if we have seen any OutOfMemoryErrors or StackOverflowErrors >>>> >>>> Hi, >>>> >>>> Please review the backport of bug: " JDK-8026331: hserr 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 @@ >>>> initializeclassspace(metaspacers); >>>> >>>> if (PrintCompressedOopsMode || (PrintMiscellaneous && Verbose)) { >>>> - gclogortty->printcr("Narrow klass base: " PTRFORMAT ", Narrow >>>> klass shift: %d", >>>> - p2i(Universe::narrowklassbase()), >>>> Universe::narrowklassshift()); >>>> - gclogortty->printcr("Compressed class space size: " SIZEFORMAT >> " >>>> Address: " PTRFORMAT " Req Addr: " PTRFORMAT, >>>> - compressedclassspacesize(), >> p2i(metaspacers.base()), >>>> p2i(requestedaddr)); >>>> + printcompressedclassspace(gclogortty, requestedaddr); >>>> + } >>>> +} >>>> + >>>> +void Metaspace::printcompressedclassspace(outputStream* st, >>>> +const >>>> char* requestedaddr) { >>>> + st->printcr("Narrow klass base: " PTRFORMAT ", Narrow klass shift: >>> %d", >>>> + p2i(Universe::narrowklassbase()), >>>> Universe::narrowklassshift()); >>>> + if (classspacelist != NULL) { >>>> + address base = >>>> + (address)classspacelist->currentvirtualspace()- >>>>> bottom(); >>>> + st->print("Compressed class space size: " SIZEFORMAT " Address: " >>>> PTRFORMAT, >>>> + compressedclassspacesize(), p2i(base)); >>>> + if (requestedaddr != 0) { >>>> + st->print(" Req Addr: " PTRFORMAT, p2i(requestedaddr)); >>>> + } >>>> + st->cr(); >>>> } >>>> } >>>> >>>> --- universe.cpp >>>> +++ universe.cpp >>>> @@ -781,27 +781,24 @@ >>>> return JNIOK; >>>> } >>>> >>>> -void Universe::printcompressedoopsmode() { >>>> - tty->cr(); >>>> - tty->print("heap address: " PTRFORMAT ", size: " SIZEFORMAT " >>>> MB", >>>> +void Universe::printcompressedoopsmode(outputStream* st) { >>>> + st->print("heap address: " PTRFORMAT ", size: " SIZEFORMAT " >>>> +MB", >>>> p2i(Universe::heap()->base()), Universe::heap()- >>>>> reservedregion().bytesize()/M); >>>> >>>> - tty->print(", Compressed Oops mode: %s", >>>> narrowoopmodetostring(narrowoopmode())); >>>> + st->print(", Compressed Oops mode: %s", >>>> narrowoopmodetostring(narrowoopmode())); >>>> >>>> if (Universe::narrowoopbase() != 0) { >>>> - tty->print(": " PTRFORMAT, p2i(Universe::narrowoopbase())); >>>> + st->print(": " PTRFORMAT, p2i(Universe::narrowoopbase())); >>>> } >>>> >>>> if (Universe::narrowoopshift() != 0) { >>>> - tty->print(", Oop shift amount: %d", Universe::narrowoopshift()); >>>> + st->print(", Oop shift amount: %d", >>>> + Universe::narrowoopshift()); >>>> } >>>> >>>> if (!Universe::narrowoopuseimplicitnullchecks()) { >>>> - 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