RFR: 8253033: CheckUnhandledOops check fails in ThreadSnapshot::initialize… [v2]
Leonid Mesnik
lmesnik at openjdk.java.net
Fri Sep 11 02:56:27 UTC 2020
On Fri, 11 Sep 2020 02:49:04 GMT, David Holmes <dholmes at openjdk.org> wrote:
>> src/hotspot/share/services/threadService.cpp line 888:
>>
>>> 886: _thread_status == java_lang_Thread::IN_OBJECT_WAIT_TIMED) {
>>> 887:
>>> 888: Handle obj = ThreadService::get_current_contended_monitor(thread);
>>
>> There must be a safepoint here then.
>> I think this would be better and safer if blocker_object and blocker_object_owner are Handles. Can you change them to
>> Handles?
>
> I can't see anywhere a safepoint check would occur in that code. This issue was flagged as being in Loom so perhaps the
> loom code is different and is what introduces the safepoint check? But I agree with Coleen that the best solution is to
> just use Handles.
It is not loom-specific and reproduced n jdk/jdk with -XX:+CheckUnhandledOops.
-------------
PR: https://git.openjdk.java.net/jdk/pull/123
More information about the hotspot-runtime-dev
mailing list