[master] RFR: 8353849: [Lilliput] Avoid race in compact identity hashcode
Roman Kennke
rkennke at openjdk.org
Mon Apr 7 12:52:25 UTC 2025
Multiple GC threads can concurrently update an object's mark-word (Parallel, G1 and Shenandoah). We need to be careful when doing object-size calculations and pass-through the pre-loaded, safe mark-word, instead of re-loading the mark-word from the object. In the latter case, we might read a forwarding pointer and interpret the bits as hash-bits which would lead to wrong size-calculation and crash.
Testing:
- hotspot_gc (+UCOH)
-------------
Commit messages:
- 8353849: [Lilliput] Avoid race in compact identity hashcode
Changes: https://git.openjdk.org/lilliput/pull/196/files
Webrev: https://webrevs.openjdk.org/?repo=lilliput&pr=196&range=00
Issue: https://bugs.openjdk.org/browse/JDK-8353849
Stats: 9 lines in 4 files changed: 0 ins; 0 del; 9 mod
Patch: https://git.openjdk.org/lilliput/pull/196.diff
Fetch: git fetch https://git.openjdk.org/lilliput.git pull/196/head:pull/196
PR: https://git.openjdk.org/lilliput/pull/196
More information about the lilliput-dev
mailing list