RFR: 8294924: JvmtiExport::post_exception_throw() doesn't deal well with concurrent stack processing
David Holmes
dholmes at openjdk.org
Tue Nov 22 02:30:22 UTC 2022
On Mon, 21 Nov 2022 21:44:14 GMT, Serguei Spitsyn <sspitsyn 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.
>
> 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.
+1 I've never even heard of this thing let alone understand when I would need to use it.
-------------
PR: https://git.openjdk.org/jdk/pull/11238
More information about the serviceability-dev
mailing list