RFR: 8334763: --enable-asan: assert(_thread->is_in_live_stack((address)this)) failed: not on stack?

Thomas Stuefe stuefe at openjdk.org
Sun Jun 23 05:42:08 UTC 2024


On Sun, 23 Jun 2024 01:39:14 GMT, Kim Barrett <kbarrett at openjdk.org> wrote:

>> fastdebug:
>> 
>> 
>> # A fatal error has been detected by the Java Runtime Environment:
>> #
>> #  Internal Error (/home/azul/azul/openjdk-git/src/hotspot/share/runtime/handles.inline.hpp:77), pid=878152, tid=878158
>> #  assert(_thread->is_in_live_stack((address)this)) failed: not on stack?
>> #
>> # JRE version:  (24.0) (fastdebug build )
>> # Java VM: OpenJDK 64-Bit Server VM (fastdebug 24-internal-adhoc.azul.openjdk-git, mixed mode, tiered, compressed oops, compressed class ptrs, g1 gc, linux-amd64)
>> # Problematic frame:
>> # V  [libjvm.so+0x1d20658]  constantPoolHandle::constantPoolHandle(Thread*, ConstantPool*)+0x268
>
> Note that JDK-8323732 is a duplicate of JDK-8330047 (and is now marked as such), which was fixed in JDK 23.

I ran into this too (though, strangely, not for asan but for ubsan) and am happy to see this addressed. I agree with @kimbarrett though that globally disabling use after return seems too big a hammer.

@jankratochvil could you please add a bit of analysis to the JBS issue? Which other uses of is_in_live_thread are affected?

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

PR Comment: https://git.openjdk.org/jdk/pull/19843#issuecomment-2184602573


More information about the build-dev mailing list