RFR: 8328285: GetOwnedMonitorInfo functions should use JvmtiHandshake [v2]
Serguei Spitsyn
sspitsyn at openjdk.org
Wed Mar 20 21:59:22 UTC 2024
On Wed, 20 Mar 2024 15:59:34 GMT, Patricio Chilano Mateo <pchilanomate at openjdk.org> wrote:
>> Good suggestion, thanks!
>> Would the following fix work ? :
>>
>>
>> git diff
>> diff --git a/src/hotspot/share/runtime/escapeBarrier.cpp b/src/hotspot/share/runtime/escapeBarrier.cpp
>> index bc01d900285..1b6d57644dc 100644
>> --- a/src/hotspot/share/runtime/escapeBarrier.cpp
>> +++ b/src/hotspot/share/runtime/escapeBarrier.cpp
>> @@ -75,7 +75,7 @@ bool EscapeBarrier::deoptimize_objects(int d1, int d2) {
>> // These frames are about to be removed. We must not interfere with that and signal failure.
>> return false;
>> }
>> - if (deoptee_thread()->has_last_Java_frame()) {
>> + if (deoptee_thread()->has_last_Java_frame() && deoptee_thread()->last_continuation() == nullptr) {
>> assert(calling_thread() == Thread::current(), "should be");
>> KeepStackGCProcessedMark ksgcpm(deoptee_thread());
>> ResourceMark rm(calling_thread());
>>
>>
>> BTW, it seems the `PopFrame` and the `ForceEarlyReturn<RetType>` are broken the same way and, I hope, the fix above should solve the issue.
>
> Fix looks good.
Thanks!
-------------
PR Review Comment: https://git.openjdk.org/jdk/pull/18332#discussion_r1532932393
More information about the hotspot-dev
mailing list