RFR (S) 8220162: Shenandoah should not commit HugeTLBFS memory

Aleksey Shipilev shade at redhat.com
Fri Mar 8 17:30:37 UTC 2019


Bug:
  https://bugs.openjdk.java.net/browse/JDK-8220162

Fix:
  http://cr.openjdk.java.net/~shade/8220162/webrev.02/

This is a funny bug: technically, +UseLargePages works and allocates heap in hugetlbfs, but it
_also_ commits stuff in usual memory after that. Which was found by allocating large enough
hugetlbfs so that double-allocation fails with OOME right away. The apparent way out is to check if
we have reserved a "special" space, and skip commits then.

Unfortunately, again, constructing a reliable regression test proved hard, so I had to resort to
manual testing.

Testing: adhoc runs with HugeTLBFS enabled, hotspot_gc_shenandoah {with and without -XX:+UseLargePages}

Thanks,
-Aleksey

-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 833 bytes
Desc: OpenPGP digital signature
URL: <https://mail.openjdk.java.net/pipermail/hotspot-gc-dev/attachments/20190308/2cd5da0f/signature.asc>


More information about the hotspot-gc-dev mailing list