RFR: 8328866: Add raw monitor rank support to the debug agent. [v2]
Chris Plummer
cjplummer at openjdk.org
Mon May 6 21:26:53 UTC 2024
On Thu, 2 May 2024 21:00:52 GMT, Chris Plummer <cjplummer at openjdk.org> wrote:
>> src/jdk.jdwp.agent/share/native/libjdwp/util.c line 1204:
>>
>>> 1202: // Need to lock during initialization so verifyMonitorRank() can be guaranteed that
>>> 1203: // if the monitor field is set, then the monitor if fully initialized. More specifically,
>>> 1204: // that the rank field has been set.
>>
>> rank for all monitors can be set in `util_initialize()`:
>>
>> for (i = 0; i < NUM_DEBUG_RAW_MONITORS; i++) {
>> dbg_monitors[i]->rank = i;
>> }
>
> Ok.
I decided not to make this change. It was a bit disruptive with the need for forward declarations. Plus I wasn't convinced I wouldn't still need the locking since there is also the assignment of the name field (although that is only used if something has gone wrong) and also I was a little worried that tearing could happen on some platforms (a partial ptr value is read in), although not on any platform that we support. I did update the comment to make it less specific about the rank field.
-------------
PR Review Comment: https://git.openjdk.org/jdk/pull/19044#discussion_r1591571349
More information about the serviceability-dev
mailing list