[jdk21u-dev] RFR: 8351500: G1: NUMA migrations cause crashes in region allocation

Thomas Stuefe stuefe at openjdk.org
Fri Mar 14 05:41:34 UTC 2025


This pull request contains a backport of commit [37ec7962](https://github.com/openjdk/jdk/commit/37ec796255ae857588a5c7e0d572407dd81cbec9) from the [openjdk/jdk](https://git.openjdk.org/jdk) repository.

The commit being backported was authored by Thomas Stuefe on 13 Mar 2025 and was reviewed by Roman Kennke, Stefan Johansson and Thomas Schatzl.

---

Please consider this patch for backporting. It fixes a G1 crash we see at a customer with a very large NUMA installation.

The backported patch was in itself not sufficient. For JDK 21 we also must fix up `G1Allocator::attempt_allocation_force`, see commit [7ee2df2ac9c14599a274250dd8ff58c7e6979611](https://github.com/openjdk/jdk21u-dev/pull/1488/commits/7ee2df2ac9c14599a274250dd8ff58c7e6979611) to use the NUMA node index handed in instead of querying libnuma on its own. 

Testing: I tested the patch with a change mimicking tons of NUMA node migrations. Without patch we get crashes/asserts, with patch everything works (I ran a modified version of TestJNICriticalStressTest.java, since that exercises the crashing paths).

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

Commit messages:
 - JDK-21-specific addition
 - Backport 37ec796255ae857588a5c7e0d572407dd81cbec9

Changes: https://git.openjdk.org/jdk21u-dev/pull/1488/files
  Webrev: https://webrevs.openjdk.org/?repo=jdk21u-dev&pr=1488&range=00
  Issue: https://bugs.openjdk.org/browse/JDK-8351500
  Stats: 57 lines in 5 files changed: 17 ins; 12 del; 28 mod
  Patch: https://git.openjdk.org/jdk21u-dev/pull/1488.diff
  Fetch: git fetch https://git.openjdk.org/jdk21u-dev.git pull/1488/head:pull/1488

PR: https://git.openjdk.org/jdk21u-dev/pull/1488


More information about the jdk-updates-dev mailing list