RFR: 8253033: CheckUnhandledOops check fails in ThreadSnapshot::initialize… [v2]

Leonid Mesnik lmesnik at openjdk.java.net
Fri Sep 11 03:40:42 UTC 2020


On Fri, 11 Sep 2020 03:31:54 GMT, David Holmes <dholmes at openjdk.org> wrote:

>> What do you think about moving
>>     Handle obj = ThreadService::get_current_contended_monitor(thread);
>> out of scope of block_object oop visibility?
>> It is my second patch.
>
> I'm missing something. How can a NULL oop get corrupted even if there is a GC?

This is a specific of "CheckUnhandledOops"
I've written in bug comment "Another possible fix would be to disable corruption of NULL unhandled oops. They couldn't
be changed really."

We discussed it with Coleen and seems that moving NULL oops out of possible safepoint or handling them seems easier
option than changing UnhandledOops.cpp to don't corrupt NULL. It is here:
https://github.com/openjdk/jdk/blob/77bdc3065057b07a676b010562c89bb0f21512b7/src/hotspot/share/runtime/unhandledOops.cpp#L113

-------------

PR: https://git.openjdk.java.net/jdk/pull/123


More information about the hotspot-runtime-dev mailing list