RFR: Cleanups, TODOs, asserts (part 1) [v2]
William Kemper
wkemper at openjdk.org
Thu Apr 13 16:28:33 UTC 2023
On Mon, 10 Apr 2023 21:22:16 GMT, Y. Srinivas Ramakrishna <ysr at openjdk.org> wrote:
>> src/hotspot/share/gc/shenandoah/shenandoahConcurrentGC.cpp line 125:
>>
>>> 123: // Concurrent remembered set scanning
>>> 124: entry_scan_remembered_set();
>>> 125: // TODO: When RS scanning yields, we will need a check_cancellation_and_abort() degeneration point here.
>>
>> We need to be really careful when transitioning to a degenerated cycle after RS scan is complete. Logically, the RS scan is part of the concurrent root scan, but it didn't get implemented with that pattern.
>
> @earthling-amzn : should this go into the `entry_mark_roots()` below then? Clearly, it seems that we can't really have a degeneration point after remembered set scanning from how I understood your comment, so the documentation comment above (to which Aleksey merely added the `TODO:` prefix) is incorrect and should be either removed entirely or corrected suitably?
I think it's fair to leave it as a TODO. Interrupting he RS scan is something we want and we have tried in the past, but we shelved it because it was more complicated than expected.
-------------
PR Review Comment: https://git.openjdk.org/shenandoah/pull/245#discussion_r1165772012
More information about the shenandoah-dev
mailing list