RFR: 8360048: NMT crash in gtest/NMTGtests.java: fatal error: NMT corruption: Block at 0x0000017748307120: header canary broken [v2]

David Holmes dholmes at openjdk.org
Wed Jul 16 21:35:03 UTC 2025


On Mon, 14 Jul 2025 20:56:16 GMT, David Holmes <dholmes at openjdk.org> wrote:

>> This is a clone of https://github.com/openjdk/jdk/pull/25950 that we need to get integrated ASAP.
>> 
>> ---
>> 
>> The canary header test failed since there were concurrent remove and free() from the tree. The remove operations are synch'ed with corresponding NMT lock. The ReserveMemory::reserve() uses the same lock internally and is not included in the locked code block.
>> 
>> ---
>> 
>> I'm re-testing with tiers 1-4
>
> David Holmes has updated the pull request incrementally with two additional commits since the last revision:
> 
>  - Update test/hotspot/gtest/runtime/test_virtualMemoryTracker.cpp
>    
>    Co-authored-by: Aleksey Shipilëv <shipilev at amazon.de>
>  - Update src/hotspot/share/nmt/virtualMemoryTracker.cpp
>    
>    Co-authored-by: Aleksey Shipilëv <shipilev at amazon.de>

Closing this PR and returning control to Afshin and Gerard. The main issue we thought this would address was JDK-8361752 but that is a separate issue.

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

PR Comment: https://git.openjdk.org/jdk/pull/26284#issuecomment-3081026274


More information about the hotspot-runtime-dev mailing list