RFR: 8277631: ZGC: CriticalMetaspaceAllocation asserts

Erik Österlund eosterlund at openjdk.java.net
Tue Nov 23 14:22:46 UTC 2021


The MetaspaceCritical_lock is a non-safepoint checking lock. That implies that the allow VM block flag is true. That implies that taking that lock takes a NoSafepointVerifier. That causes an assert to fire when MetaspaceCriticalAllocation::wait_for_purge transitions to blocked with ThreadBlockInVM while holding the lock. The fix is to move the locker inside of the ThreadBlockInVM.

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

Commit messages:
 - 8277631: ZGC: CriticalMetaspaceAllocation asserts

Changes: https://git.openjdk.java.net/jdk/pull/6520/files
 Webrev: https://webrevs.openjdk.java.net/?repo=jdk&pr=6520&range=00
  Issue: https://bugs.openjdk.java.net/browse/JDK-8277631
  Stats: 35 lines in 2 files changed: 30 ins; 0 del; 5 mod
  Patch: https://git.openjdk.java.net/jdk/pull/6520.diff
  Fetch: git fetch https://git.openjdk.java.net/jdk pull/6520/head:pull/6520

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


More information about the hotspot-dev mailing list