RFR(S): JDK-8129108: nmethod related crash in CMS

Poonam Bajaj Parhar poonam.bajaj at oracle.com
Sat Jun 20 04:32:47 UTC 2015


Please review this change for bug:
JDK-8129108: <https://bugs.openjdk.java.net/browse/JDK-8129108> nmethod 
related crash in CM

There is an assertion failure with fastdebug build with test 
This failure occurs when CMSCollector::_should_unload_classes is false 
and the _roots_scanning_options does
not contain SO_AllCodeCache:

#  Internal Error (hotspot/src/share/vm/gc/cms/concurrentMarkSweepGeneration.cpp:4472), pid=16267, tid=0xf36ffb70
#  assert(_collector->should_unload_classes() ||
(_collector->CMSCollector::roots_scanning_options() &
GenCollectedHeap::SO_AllCodeCache)) failed: if we didn't scan the code
cache, we have to be ready to drop nmethods with expired weak oops

This problem was exposed with the fix ofJDK-8085965: 
<https://bugs.openjdk.java.net/browse/JDK-8085965> VM hangs in C2Compiler,
that disables CMSClassUnloadingEnabled when -Xnoclassgc or 
are specified on the command line.

CMSCollector::_roots_scanning_options option should contain 
SO_AllCodeCache to ensure
that we scan code cache when we are not unloading classes.

Webrev: http://cr.openjdk.java.net/~poonam/8129108/webrev/
Testing: JPRT, testcase /nsk.coverage.arguments.arguments002.arguments002/


-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.openjdk.java.net/pipermail/hotspot-gc-dev/attachments/20150619/b03bade4/attachment.html>

More information about the hotspot-gc-dev mailing list