Integrated: 8370198: Test gc/arguments/TestShrinkHeapInSteps.java crashed: assert(left >= right) failed: avoid underflow

Albert Mingkun Yang ayang at openjdk.org
Mon Dec 8 18:56:10 UTC 2025


On Wed, 19 Nov 2025 15:39:27 GMT, Albert Mingkun Yang <ayang at openjdk.org> wrote:

> Add an early-return for outside-heap address in `CollectedHeap::is_in` API.
> 
> While investigating this failure (JDK-8370198), I realized that some java-threads (compiler-threads) in `native` state can invoke `CollectedHeap` APIs. Since heap-resizing occurs inside safepoint but java-threads in `native` state just ignore safepoint, I have added some assert to catch such dangerous uses, where the return value might not be stable.
> 
> Test: tie1-5; can't reproduce the JDK-8370198 with or without this patch for >8000 runs.

This pull request has now been integrated.

Changeset: d34ef196
Author:    Albert Mingkun Yang <ayang at openjdk.org>
URL:       https://git.openjdk.org/jdk/commit/d34ef196c298aa91f8511714cfb04b15ae7fbf0a
Stats:     21 lines in 4 files changed: 19 ins; 2 del; 0 mod

8370198: Test gc/arguments/TestShrinkHeapInSteps.java crashed:  assert(left >= right) failed: avoid underflow

Reviewed-by: stefank, tschatzl

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

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


More information about the hotspot-gc-dev mailing list