RFR: 8276801: gc/stress/CriticalNativeStress.java fails intermittently with Shenandoah [v2]

Zhengyu Gu zgu at openjdk.java.net
Tue Nov 9 17:33:04 UTC 2021


> JDK-8276205 fixed a bug that prevents concurrent code cache iteration, without holding CodeCache_lock. That causes register_nmethod() calls can go through during concurrent code cache iteration.
> 
> This is no a problem for new nmethod, cause it is *not* in cache cache snapshot for concurrent code cache iteration, but *nmethod patching* is. We can not allow *nmethod patching* during concurrent code cache iteration, should block it until iteration is completed.
> 
> Test:
> 
> - [x] hotspot_gc_shenandoah
> - [x] Stress test on gc/stress/CriticalNativeStress.java

Zhengyu Gu has updated the pull request incrementally with two additional commits since the last revision:

 - Revert assertion for unregister_nmethod
 - Fix comment as Aleksey suggested

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

Changes:
  - all: https://git.openjdk.java.net/jdk/pull/6316/files
  - new: https://git.openjdk.java.net/jdk/pull/6316/files/aaebcb81..0248f1e4

Webrevs:
 - full: https://webrevs.openjdk.java.net/?repo=jdk&pr=6316&range=01
 - incr: https://webrevs.openjdk.java.net/?repo=jdk&pr=6316&range=00-01

  Stats: 2 lines in 1 file changed: 0 ins; 0 del; 2 mod
  Patch: https://git.openjdk.java.net/jdk/pull/6316.diff
  Fetch: git fetch https://git.openjdk.java.net/jdk pull/6316/head:pull/6316

PR: https://git.openjdk.java.net/jdk/pull/6316


More information about the hotspot-gc-dev mailing list