RFR: 8261391: ZGC crash - SEGV in RevokeOneBias::do_thread [v3]
Robbin Ehn
rehn at openjdk.java.net
Mon Feb 22 07:38:12 UTC 2021
On Mon, 22 Feb 2021 05:14:39 GMT, David Holmes <dholmes at openjdk.org> wrote:
>> Robbin Ehn has updated the pull request incrementally with one additional commit since the last revision:
>>
>> Tiny spelling error
>
> src/hotspot/share/runtime/handshake.cpp line 291:
>
>> 289: // Only when the target is not executing the handshake itself.
>> 290: StackWatermarkSet::start_processing(current_target, StackWatermarkKind::gc);
>> 291: }
>
> As per my comment to Erik, this situation seems like a programming error to me as there you should not be a way for the target to create a Handle that the executing thread then gets a hold off - data should only flow one way from the requesting thread to the executing thread.
StackWatermarkSet::start_processing(current_target, StackWatermarkKind::gc); is for thread local resources which may contain oops. A handshake may read from e.g. the target threads stack, so before the executing thread reads from the stack, we make sure it is safe.
-------------
PR: https://git.openjdk.java.net/jdk/pull/2571
More information about the hotspot-runtime-dev
mailing list