RFR: 8372566: Genshen: crash at ShenandoahScanRemembered::process_clusters after JDK-8371667 [v2]

Xiaolong Peng xpeng at openjdk.org
Mon Dec 1 18:30:48 UTC 2025


On Mon, 1 Dec 2025 16:59:16 GMT, Xiaolong Peng <xpeng at openjdk.org> wrote:

>> For non-plab allocs in old gen, the objects need to be registered in card table, which was missed in the [PR](https://git.openjdk.org/jdk/pull/28247) for JDK-8371667. The bug didn't cause jtreg test failures in GHA and my local test, but when I ran specjbb benchmarks, it did cause crash at ShenandoahScanRemembered::process_clusters when GC scans remembered set. 
>> 
>> The bug may cause other issue since the object in old gen is not properly registered, e.g. marking phase have wrong result.
>> 
>> Tests:
>> - [x]  specjbb, no crash
>> - [x] hotspot_gc_shenandoah
>
> Xiaolong Peng has updated the pull request incrementally with one additional commit since the last revision:
> 
>   Use member function is_lab_alloc() instead of test the value of type()

Thanks all for the reviews!

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

PR Comment: https://git.openjdk.org/jdk/pull/28521#issuecomment-3598205309


More information about the shenandoah-dev mailing list