RFR: 8276796: gc/TestSystemGC.java large pages subtest fails with ZGC

Aleksey Shipilev shade at openjdk.java.net
Tue Nov 9 12:16:52 UTC 2021


ZGC would not start when it cannot allocate the heap with `-XX:+UseLargePages`. This makes the `UseLargePages` subtest fail on systems with (default) `nr_hugepages = 0`. It was exposed after [JDK-8269077](https://bugs.openjdk.java.net/browse/JDK-8269077) moved that test config from G1-specific to generic one.

While fixing this bug, I decided to massage a test a bit: make it consistently choosing the configuration based on GC availability, doing `UseLargePages` tests only for GCs that fall back to non-large pages if not available, added test IDs. This basically goes the other way JDK-8269077 went: put in the GC-specific configs.

Additional testing:
 - [x] Linux x86_64 fastdebug, `gc/TestSystemGC.java` (runs all 5 configs)
 - [x] Linux x86_64 fastdebug, `gc/TestSystemGC.java`, `TEST_VM_OPTS=-XX:+UseSerialGC` (runs 1 config)
 - [x] Linux x86_64 fastdebug, `gc/TestSystemGC.java`, `TEST_VM_OPTS=-XX:+UseParallelGC` (runs 1 config)
 - [x] Linux x86_64 fastdebug, `gc/TestSystemGC.java`, `TEST_VM_OPTS=-XX:+UseG1GC` (runs 1 config)
 - [x] Linux x86_64 fastdebug, `gc/TestSystemGC.java`, `TEST_VM_OPTS=-XX:+UseShenandoahGC` (runs 1 config)
 - [x] Linux x86_64 fastdebug, `gc/TestSystemGC.java`, `TEST_VM_OPTS=-XX:+UseZGC` (runs 1 config)

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

Commit messages:
 - Fix

Changes: https://git.openjdk.java.net/jdk/pull/6310/files
 Webrev: https://webrevs.openjdk.java.net/?repo=jdk&pr=6310&range=00
  Issue: https://bugs.openjdk.java.net/browse/JDK-8276796
  Stats: 15 lines in 1 file changed: 7 ins; 0 del; 8 mod
  Patch: https://git.openjdk.java.net/jdk/pull/6310.diff
  Fetch: git fetch https://git.openjdk.java.net/jdk pull/6310/head:pull/6310

PR: https://git.openjdk.java.net/jdk/pull/6310



More information about the hotspot-gc-dev mailing list