RFR: 8290023: Remove use of IgnoreUnrecognizedVMOptions in gc tests
Kim Barrett
kbarrett at openjdk.org
Mon Jul 11 18:19:51 UTC 2022
On Mon, 11 Jul 2022 07:39:02 GMT, Thomas Schatzl <tschatzl at openjdk.org> wrote:
> Hi all,
>
> can I have reviews for removal of the use of `-XX:+IgnoreUnrecognizedVMOptions` for gc tests?
>
> As per [JDK-8228493](https://bugs.openjdk.org/browse/JDK-8228493) use of that option has drawbacks wrt to test reliability, so trying to remove them by
> * duplicating `@test` blocks (mostly sme Shenandoah tests as I could not find a good way for them)
> * adding additional `@requires`
> * removing it in tests where it is not actually required
>
> Testing: gha, running tests
>
> Thanks,
> Thomas
Changes requested by kbarrett (Reviewer).
test/hotspot/jtreg/gc/epsilon/TestAlignment.java line 40:
> 38: * gc.epsilon.TestAlignment
> 39: */
> 40: /**
Insert blank line.
test/hotspot/jtreg/gc/epsilon/TestAlignment.java line 41:
> 39: */
> 40: /**
> 41: * @test TestMaxTLAB
Wrong test name.
test/hotspot/jtreg/gc/g1/TestLargePageUseForAuxMemory.java line 121:
> 119: "-XX:" + (largePageEnabled ? "+" : "-") + "UseLargePages" });
> 120: if (Platform.is64bit()) {
> 121: vmOpts.add("-XX:ObjectAlignmentInBytes=8");
As 8 is the default value, I'm not sure why this option is being added.
test/hotspot/jtreg/gc/g1/TestVerificationInConcurrentCycle.java line 47:
> 45: * @test TestVerificationInConcurrentCycle
> 46: * @requires vm.gc.G1
> 47: * @requires !vm.debug
Maybe add a comment that this leaves out debug-only G1VerifyBitmaps.
test/hotspot/jtreg/gc/metaspace/TestMetaspacePerfCounters.java line 100:
> 98: */
> 99:
> 100: /* @test TestMetaspacePerfCountersSerial
I think that throughout this test could use the new-ish `@test id=XXX` feature, so this could be `@test id=Serial32` and the earlier one for 64 bit could be `@test id=Serial64`. This would give more information in failure report summaries.
test/hotspot/jtreg/gc/metaspace/TestMetaspacePerfCounters.java line 155:
> 153: * @run main/othervm -XX:+UsePerfData -XX:+UnlockExperimentalVMOptions -XX:+UseShenandoahGC gc.metaspace.TestMetaspacePerfCounters
> 154: */
> 155:
Is this file missing entries for Epsilon? That could be a followup RFE if appropriate.
test/hotspot/jtreg/gc/shenandoah/options/TestSelectiveBarrierFlags.java line 40:
> 38: * of barrier flags
> 39: * @requires vm.gc.Shenandoah
> 40: * @requires !vm.debug
Seems like it might be a bit simpler to have one `@test` with the first two `@run` lines and no `@requires` on `vm.debug`, and a second (debug-only) `@test` with the third `@run`.
-------------
PR: https://git.openjdk.org/jdk/pull/9443
More information about the hotspot-gc-dev
mailing list