[master] RFR: 8353849: [Lilliput] Avoid race in compact identity hashcode [v2]

Roman Kennke rkennke at openjdk.org
Mon Apr 7 19:52:46 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)

Roman Kennke has updated the pull request incrementally with one additional commit since the last revision:

  Avoid more races

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

Changes:
  - all: https://git.openjdk.org/lilliput/pull/196/files
  - new: https://git.openjdk.org/lilliput/pull/196/files/12804a55..08ce0ac7

Webrevs:
 - full: https://webrevs.openjdk.org/?repo=lilliput&pr=196&range=01
 - incr: https://webrevs.openjdk.org/?repo=lilliput&pr=196&range=00-01

  Stats: 19 lines in 13 files changed: 3 ins; 0 del; 16 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