RFR: 8294924: JvmtiExport::post_exception_throw() doesn't deal well with concurrent stack processing
Serguei Spitsyn
sspitsyn at openjdk.org
Mon Nov 21 21:50:24 UTC 2022
On Fri, 18 Nov 2022 12:30:19 GMT, Erik Österlund <eosterlund at openjdk.org> wrote:
> There is a stack walk in JvmtiExport::post_exception_throw() that has safepoints in it. This trips up the stack watermark code. This patch adds a RAII object to JvmtiExport::post_exception_throw() that keeps the thread and its stack fully processed throughout the function.
> Testing: tier1-7 of ZGC tests on linux x86_64 debug and manual testing of the test that failed.
Thank you for fixing this!
Looks good.
Added a minor comment.
Thanks,
Serguei
src/hotspot/share/prims/jvmtiExport.cpp line 1969:
> 1967: Handle exception_handle(thread, exception);
> 1968: KeepStackGCProcessedMark ksgcpm(thread);
> 1969:
Nit: It'd be nice to place a small comment about why it is needed.
-------------
Marked as reviewed by sspitsyn (Reviewer).
PR: https://git.openjdk.org/jdk/pull/11238
More information about the hotspot-dev
mailing list