RFR: 8256688: Shenandoah: Lock rank inversion after JDK-8212879
Zhengyu Gu
zgu at openjdk.java.net
Fri Nov 20 01:07:10 UTC 2020
After JDK-8212879, gc_notification() takes JvmtiTagMap_lock/24, while ShenandoahConcurrentWeakRootsEvacUpdateTask holds StringDedupQueue_lock/11, which results lock rank inversion during concurrent weak root processing.
This patch ensures that no lock is held when triggers gc notification.
Test:
- [x] hotspot_gc_shenandoah
-------------
Commit messages:
- Fixed ShenandoahHeapIterationRootScanner
Changes: https://git.openjdk.java.net/jdk/pull/1334/files
Webrev: https://webrevs.openjdk.java.net/?repo=jdk&pr=1334&range=00
Issue: https://bugs.openjdk.java.net/browse/JDK-8256688
Stats: 17 lines in 3 files changed: 15 ins; 0 del; 2 mod
Patch: https://git.openjdk.java.net/jdk/pull/1334.diff
Fetch: git fetch https://git.openjdk.java.net/jdk pull/1334/head:pull/1334
PR: https://git.openjdk.java.net/jdk/pull/1334
More information about the shenandoah-dev
mailing list