RFR: 8247281: migrate ObjectMonitor::_object to OopStorage [v4]

Roman Kennke rkennke at openjdk.java.net
Mon Sep 14 20:28:30 UTC 2020


On Mon, 14 Sep 2020 20:21:23 GMT, Daniel D. Daugherty <dcubed at openjdk.org> wrote:

>> src/hotspot/share/gc/shared/space.inline.hpp line 176:
>> 
>>> 174:       assert(!space->scanned_block_is_obj(cur_obj) || oop(cur_obj)->mark_raw().is_unlocked() ||
>>> 175:              oop(cur_obj)->mark_raw().has_bias_pattern() || oop(cur_obj)->mark_raw().has_monitor(),
>>> 176:              "these are the only valid states during a mark sweep");
>> 
>> Is this change related? Also, when moving the assert into the else block it will become always-true because of
>> space->scanned_block_is_obj(cur_obj), or am I missing something?
>
> See this comment from Coleen and the replies:
> https://github.com/openjdk/jdk/pull/135#discussion_r487300636
> 
> Please let me know if that resolved this comment for you.

Sorry, no. Maybe it's too late here and I shall think about it tomorrow morning instead ;-) Or maybe you can explain it
again in the context of that change. How's the assert even relevant when moved in the else-branch?

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

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


More information about the hotspot-runtime-dev mailing list