RFR: 8278475: G1 dirty card refinement by Java threads may get unnecessarily paused

Kim Barrett kbarrett at openjdk.java.net
Wed Jan 19 22:38:06 UTC 2022


Please review this change to avoid attempts to refine dirty cards by Java
threads when there is an active STS yield request, as the attempt will just
end up being paused.  When going into a safepoint this avoids wasted work and
transfer of buffers into the paused list.  More importantly, when coming out
of a pause this avoids deferring buffers to after the next safepoint, due to
the yield request being cleared after Java threads are restarted.

Testing:
mach5 tier1

Lots of testing as part of investigation of JDK-8273383.

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

Commit messages:
 - fix

Changes: https://git.openjdk.java.net/jdk/pull/7148/files
 Webrev: https://webrevs.openjdk.java.net/?repo=jdk&pr=7148&range=00
  Issue: https://bugs.openjdk.java.net/browse/JDK-8278475
  Stats: 9 lines in 1 file changed: 8 ins; 0 del; 1 mod
  Patch: https://git.openjdk.java.net/jdk/pull/7148.diff
  Fetch: git fetch https://git.openjdk.java.net/jdk pull/7148/head:pull/7148

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



More information about the hotspot-gc-dev mailing list