Memory Corruption in JDK-21 on x86_64 with AVX-512

Vladimir Kozlov vladimir.kozlov at oracle.com
Wed Sep 27 19:05:49 UTC 2023


Hi Xiaohong,

Can you help to write a regression test which we can include with the 
fix in PR?

I will start testing the fix for JDK 22 where we should push it first.

Thanks,
Vladimir K

On 9/27/23 11:32 AM, Vladimir Kozlov wrote:
> https://bugs.openjdk.org/browse/JDK-8317121
> 
> On 9/27/23 11:19 AM, Vladimir Kozlov wrote:
>> Officially jdk21.0.1 is closed for fixes but we are discussing this 
>> issue now.
>>
>> I verified the suggested by Xiaohong fix:
>> retrun nullptr in StoreVectorNode::Ideal() and LoadVectorNode::Ideal().
>>
>> I will file a bug and follow the process.
>>
>> Regards,
>> Vladimir K
>>
>> On 9/27/23 9:54 AM, Viswanathan, Sandhya wrote:
>>> Copying Tobias.
>>>
>>>  From what I see JDK21 update schedule has a mid-October release plan 
>>> (https://wiki.openjdk.org/display/JDKUpdates/JDK+21u).
>>>
>>> Tobias, do you know the code freeze date for that. Hopefully, we 
>>> still have a couple of days left.
>>>
>>> At the minimum we should revert to return nullptr in both 
>>> LoadVectorMaskedNode::Ideal and StoreVectorMaskedNode::Ideal as a 
>>> workaround.
>>>
>>> Best Regards,
>>> Sandhya
>>>
>>> -----Original Message-----
>>> From: hotspot-compiler-dev <hotspot-compiler-dev-retn at openjdk.org> On 
>>> Behalf Of Carter Kozak
>>> Sent: Wednesday, September 27, 2023 7:26 AM
>>> To: Xiaohong Gong <Xiaohong.Gong at arm.com>; 
>>> hotspot-compiler-dev at openjdk.org
>>> Subject: Re: Memory Corruption in JDK-21 on x86_64 with AVX-512
>>>
>>> Thank you for such a quick diagnosis, I really appreciate it!
>>>
>>> While I don't have a good sense of the mapping between bug severity 
>>> and backport/release criteria, I suspect this issue may be a strong 
>>> candidate for an out-of-band jdk-21 release. I'm certainly biased 
>>> because I had invalid bytes silently persisted, and defer to folks 
>>> closer to the process.
>>>
>>> Best,
>>> Carter Kozak
>>>
>>> On Wed, Sep 27, 2023, at 02:57, Xiaohong Gong wrote:
>>>> Hi Carter,
>>>> Thanks for reporting this issue!
>>>> It seems the issue is caused by the calling of the super class’s 
>>>> “Ideal()” method in “LoadVectorMaskedNode::Ideal()” (code is: 
>>>> 8286941: Add mask IR for partial vector operations for ARM SVE by 
>>>> XiaohongGong · Pull Request #9037 · openjdk/jdk (github.com) 
>>>> <https://github.com/openjdk/jdk/pull/9037/files#diff-692826251cae892bc4737919579c6afbd317551cd507f99c7bd29d585c1282e2R1028>).
>>>> Some optimization applied on “LoadNode” is not suitable for 
>>>> “LoadVectorMaskedNode” now. Reverting it back to “return nullptr” 
>>>> can make your benchmark pass.
>>>> I will look at this issue and try to fix it next. Thanks!


More information about the hotspot-compiler-dev mailing list