RFR: 8315247: GenShen: Condition calls to post-write barrier code generation by a flag

Kelvin Nilsen kdnilsen at openjdk.org
Tue Aug 29 18:48:31 UTC 2023


On Mon, 28 Aug 2023 22:29:32 GMT, Y. Srinivas Ramakrishna <ysr at openjdk.org> wrote:

>> maybe just fatal out in ShenandoahArguments if mode->is_generational() and !ShenandoahCardBarrier.  So the user has to specify ShenandoahCardBarrier if they specify ShenandoahGCMode == generational.
>
> I'm going to leave it visible on command-line like the other `Shenandoah*Barrier` flags, but force it off in all modes except generational where we force it on. Since these aren't manageable flags,, jcmd should not be able to enable them after start up either. 
> 
> If the concern is that we would be silently ignoring user request to explicitly enable it in non-generational mode, or disable it in generational mode, we can log a warning upon such an attempt and still do the right thing.
> 
> Let me test these various flag combos and ensure that they do the right thing. I'll update the PR once finished w/the changes and testing.

Maybe the comment can say: "ShenandoahCardBarrier" is true by default iff ShenandoahGCMode is generational.

Otherwise, I think we would need to change all of the existing test configurations that have generational mode to add -XX:ShenandoahCardBarrier=true

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

PR Review Comment: https://git.openjdk.org/shenandoah/pull/313#discussion_r1309121504


More information about the shenandoah-dev mailing list