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

Roman Kennke rkennke at openjdk.org
Tue Apr 8 11:19:36 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:

  Fix 32 bit build, again

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

Changes:
  - all: https://git.openjdk.org/lilliput/pull/196/files
  - new: https://git.openjdk.org/lilliput/pull/196/files/47e1ea05..c76ba87e

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

  Stats: 1 line in 1 file changed: 0 ins; 0 del; 1 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