8075214: SIGSEGV in nmethod sweeping
Summary: Changed implementation of forceNMethodSweep() to request sweep from existing sweeper thread.
Reviewed-by: kvn, mgerdin, dholmes
--- a/test/lib/sun/hotspot/WhiteBox.java Thu Mar 26 13:54:09 2015 -0700
+++ b/test/lib/sun/hotspot/WhiteBox.java Mon Mar 30 07:53:19 2015 +0200
@@ -168,14 +168,7 @@
return allocateCodeBlob( intSize, type);
}
public native void freeCodeBlob(long addr);
- public void forceNMethodSweep() {
- try {
- forceNMethodSweep0().join();
- } catch (InterruptedException e) {
- Thread.currentThread().interrupt();
- }
- }
- public native Thread forceNMethodSweep0();
+ public native void forceNMethodSweep();
public native Object[] getCodeHeapEntries(int type);
public native int getCompilationActivityMode();
public native Object[] getCodeBlob(long addr);