RFR: 8271163: G1 uses wrong degree of MT processing since JDK-8270169
Thomas Schatzl
tschatzl at openjdk.java.net
Fri Jul 23 11:44:20 UTC 2021
Hi all,
JDK-8270169 changed the amount of resources supplied by the CM reference processor, assuming that the CM ref processor is only ever used with the marking threads.
This is unfortunately not true, the CM reference processor is also used by the Remark pause for discovery using the parallel gc worker threads.
This causes crashes because of the code assuming single threaded operation while it is not.
The solution proposed here is to just revert JDK-8270169 which introduced that change. Applies cleanly.
I also added a comment in the reference processor constructor to why we need to consider both thread counts.
Thanks,
Thomas
-------------
Commit messages:
- Revert 7d2825e4219671bdaef6586864afecbca7b33e48 and comment why
Changes: https://git.openjdk.java.net/jdk/pull/4888/files
Webrev: https://webrevs.openjdk.java.net/?repo=jdk&pr=4888&range=00
Issue: https://bugs.openjdk.java.net/browse/JDK-8271163
Stats: 6 lines in 2 files changed: 3 ins; 0 del; 3 mod
Patch: https://git.openjdk.java.net/jdk/pull/4888.diff
Fetch: git fetch https://git.openjdk.java.net/jdk pull/4888/head:pull/4888
PR: https://git.openjdk.java.net/jdk/pull/4888
More information about the hotspot-gc-dev
mailing list