RFR: 8256732: Zero: broken +ZeroTLAB exposes badly initialized memory [v4]
Aleksey Shipilev
shade at openjdk.java.net
Tue Mar 16 09:15:22 UTC 2021
On Tue, 16 Mar 2021 09:07:45 GMT, David Holmes <dholmes at openjdk.org> wrote:
>> Aleksey Shipilev has updated the pull request with a new target base due to a merge or a rebase. The pull request now contains six commits:
>>
>> - Refactor TLAB allocation code a bit
>> - Adjust for the fact ThreadLocalAllocBuffer can mangle object space
>> - Merge branch 'master' into JDK-8256732-zero-zerotlab-broken
>> - Merge branch 'master' into JDK-8256732-zero-zerotlab-broken
>> - Maintain the body/header initialization order
>> - 8256732: Zero: broken +ZeroTLAB exposes badly initialized memory
>
> src/hotspot/share/interpreter/zero/bytecodeInterpreter.cpp line 1817:
>
>> 1815: // - if TLAB is pre-zeroed, we can skip this path
>> 1816: // - in debug mode, ThreadLocalAllocBuffer::allocate mangles
>> 1817: // this area, and we still need to initialize it
>
> That still sounds like a bug to me.
It really does. But after spending some time in that code, I came to tentative conclusion it would be easier to just deprecate `ZeroTLAB` instead of trying to fix it.
-------------
PR: https://git.openjdk.java.net/jdk/pull/1343
More information about the hotspot-runtime-dev
mailing list