RFR: 8370198: Test gc/arguments/TestShrinkHeapInSteps.java crashed: assert(left >= right) failed: avoid underflow [v3]
Thomas Schatzl
tschatzl at openjdk.org
Thu Dec 4 13:39:30 UTC 2025
On Thu, 4 Dec 2025 11:28:40 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.
>
> Albert Mingkun Yang has updated the pull request incrementally with one additional commit since the last revision:
>
> review
lgtm; I think `verify_not_in_native_if_java_thread` could be made a `NOT_DEBUG_RETURN` method which I tend to prefer to have less defines in the code. Either is fine to me though.
-------------
Marked as reviewed by tschatzl (Reviewer).
PR Review: https://git.openjdk.org/jdk/pull/28393#pullrequestreview-3540081518
More information about the hotspot-dev
mailing list