RFR: 8296401: ConcurrentHashTable::bulk_delete might miss to delete some objects [v8]

Leo Korinth lkorinth at openjdk.org
Mon Jan 16 13:15:38 UTC 2023


> ConcurrentHashTable::bulk_delete might miss to delete some objects if a bucket has more than 256 entries. Current uses of ConcurrentHashTable are not harmed by this behaviour. 
> 
> I modified gtest:ConcurrentHashTable to detect the problem (first commit), and fixed the problem in the code (second commit).
> 
> Tests passes tier1-3.

Leo Korinth has updated the pull request with a new target base due to a merge or a rebase. The incremental webrev excludes the unrelated changes brought in by the merge/rebase. The pull request contains 11 additional commits since the last revision:

 - Merge branch '_master_jdk' into _8296401_ConcurrentHashTable
 - rerun test
 - growable array is limited by (signed) int, this should not be a problem
 - GrowableArray is indexed by int :-(
 - renam stack limit, and add comments
 - Make ndel a reference to a pointer so that we can poison it. Also fix
   POISON_PTR to be of correct type (the pointer is const, not the memory
   pointed to).
 - fix counting bug
 - growable stacked
 - Revert "working!"
   
   This reverts commit 5366f22c7202eaa2182976c084d02e9af4f56de0.
 - working!
 - ... and 1 more: https://git.openjdk.org/jdk/compare/e2024092...1b91238a

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

Changes:
  - all: https://git.openjdk.org/jdk/pull/10983/files
  - new: https://git.openjdk.org/jdk/pull/10983/files/a4d5b80f..1b91238a

Webrevs:
 - full: https://webrevs.openjdk.org/?repo=jdk&pr=10983&range=07
 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=10983&range=06-07

  Stats: 234939 lines in 4112 files changed: 105205 ins; 99231 del; 30503 mod
  Patch: https://git.openjdk.org/jdk/pull/10983.diff
  Fetch: git fetch https://git.openjdk.org/jdk pull/10983/head:pull/10983

PR: https://git.openjdk.org/jdk/pull/10983


More information about the hotspot-dev mailing list