You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Extend JNI ID retention to JVMTI GetStackTrace stack walks
JVMTI GetStackTrace and GetAllStackTracesExtended hand out jmethodIDs
during stack collection. If classes are unloaded before resolution,
passing a stale jmethodID to GetMethodName, GetMethodDeclaringClass,
or GetClassSignature causes a segfault instead of an error code.
- Rename J9ClassLoader.asyncGetCallTraceUsed to keepJNIIDs to
generalize the retention mechanism beyond ASGCT
- Rename macro J9VM_SHOULD_CLEAR_JNIIDS_FOR_ASGCT to
J9VM_SHOULD_KEEP_JNIIDS
- Set classLoader->keepJNIIDs = 1 in GetStackTrace and
GetAllStackTracesExtended iterators when handing out a method ID
- Invalidate pool entries in freeClassNativeMemory before freeing
the per-class table, covering anonymous/hidden classes (e.g.
LambdaForms) missed by vmHookAnonClassesUnload
Signed-off-by: Tomal Majumder <tomal.majumder@ibm.com>
0 commit comments