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

David Holmes david.holmes at oracle.com
Tue Mar 6 12:39:26 UTC 2018


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