[jdk25u-dev] RFR: 8373714: Shenandoah: Register heuristic penalties following a degenerated GC

Kelvin Nilsen kdnilsen at openjdk.org
Thu Jan 22 17:20:50 UTC 2026


On Thu, 22 Jan 2026 09:31:23 GMT, Aleksey Shipilev <shade at openjdk.org> wrote:

>> Hi all,
>> 
>> This pull request contains a backport of commit 385c4f81 from the openjdk/jdk repository.
>> 
>> The commit being backported was authored by Kelvin Nilsen on 8 Jan 2026 and was reviewed by William Kemper.
>> 
>> Thanks!
>
> src/hotspot/share/gc/shenandoah/heuristics/shenandoahAdaptiveHeuristics.hpp line 79:
> 
>> 77:   virtual void record_success_concurrent() override;
>> 78:   virtual void record_degenerated() override;
>> 79:   virtual void record_success_full() override;
> 
> So adding `virtual` in this hunk is what makes the backport unclean? Do you need to do it here?

I can remove virtual and override from these declarations and the code still compiles on Linux with gcc 10.5.0.

My recollection is that certain other compilers (e.g. MacOS and/or Windows) are less forgiving, which is what motivated these changes in the original PR.

The GHA testing for backports is not as thorough as the GHA for changes to master.

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

PR Review Comment: https://git.openjdk.org/jdk25u-dev/pull/162#discussion_r2717852627


More information about the jdk-updates-dev mailing list