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

Thomas Stuefe stuefe at openjdk.org
Thu May 22 16:59:25 UTC 2025


This is not a clean backport. The effected G1Allocator and G1Collector methods have changed since JDK17.

So this backports reimplements the patch in a minimally invasive way while retaining as much similarity as possible with the original patch.

The gist of the patch is clear: instead of finding out the NUMA node index at every instance of G1Allocator::allocate_xxx, and then be subject to NUMA node migrations, we fix the NUMA node index once and use that one.

I tested this patch with my "FakeNUMA" addition (I plan to upstream that one at some point). This FakeNUMA mode mimics a lot of NUMA node migrations. I can verify that without this patch the JVM crashes quickly, with the patch it does not crash.

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

Commit messages:
 - Backport 37ec796255ae857588a5c7e0d572407dd81cbec9

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

PR: https://git.openjdk.org/jdk17u-dev/pull/3607


More information about the jdk-updates-dev mailing list