RFR: 8257228: G1: SIGFPE in G1ConcurrentRefine::create(int*) due to buffers_to_cards overflow

Jie Fu jiefu at openjdk.java.net
Sat Nov 28 08:32:06 UTC 2020


Hi all,

SIGFPE was observed by running:
java -XX:G1ConcRefinementThresholdStep=16G -XX:G1UpdateBufferSize=1G -version

The reason is that buffers_to_cards [1] returns 0 for 'step' due to overflow.
It would be better to add overflow check logic is it.

Testing:
  - tier1 on Linux/x64

Thanks.
Best regards,
Jie

[1] https://github.com/openjdk/jdk/blob/master/src/hotspot/share/gc/g1/g1ConcurrentRefine.cpp#L235

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

Commit messages:
 - 8257228: G1: SIGFPE in G1ConcurrentRefine::create(int*) due to buffers_to_cards overflow

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

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


More information about the hotspot-gc-dev mailing list