JDK-8336341 : SIGSEGV in RegisterNMethodOopClosure::do_oop(oopDesc**)
  • Type: Bug
  • Component: hotspot
  • Sub-Component: gc
  • Priority: P2
  • Status: Open
  • Resolution: Unresolved
  • OS: linux
  • CPU: x86_64
  • Submitted: 2024-07-13
  • Updated: 2024-07-15
Related Reports
Relates :  
Description
Test java/net/httpclient/ManyRequests2.java intermittent trigger SIGSEGV:

#  SIGSEGV (0xb) at pc=0x00007f39cc3a8bd8, pid=134884, tid=136629
#
# JRE version: OpenJDK Runtime Environment (24.0) (build 24)
# Java VM: OpenJDK 64-Bit Server VM (24, compiled mode, sharing, tiered, compressed oops, compressed class ptrs, g1 gc, linux-amd64)
# Problematic frame:
# V  [libjvm.so+0x7d4bd8]  RegisterNMethodOopClosure::do_oop(oopDesc**)+0x38

Stack: [0x00007f392d1f3000,0x00007f392d2f3000],  sp=0x00007f392d2eb818,  free space=994k
Native frames: (J=compiled Java code, j=interpreted, Vv=VM code, C=native code)
V  [libjvm.so+0x7d4bd8]  RegisterNMethodOopClosure::do_oop(oopDesc**)+0x38  (g1CollectedHeap.cpp:2983)
V  [libjvm.so+0x7cb5b1]  G1CollectedHeap::register_nmethod(nmethod*)+0x31  (nmethod.hpp:836)
V  [libjvm.so+0x56e924]  Runtime1::patch_code(JavaThread*, Runtime1::StubID)+0x724  (c1_Runtime1.cpp:1275)
V  [libjvm.so+0x56f9b7]  Runtime1::access_field_patching(JavaThread*)+0x17  (c1_Runtime1.cpp:1428)
v  ~RuntimeStub::access_field_patching Runtime1 stub 0x00007f39b3b12d38
J 19749 c1 sun.security.ssl.SSLEngineImpl.writeRecord([Ljava/nio/ByteBuffer;II[Ljava/nio/ByteBuffer;II)Ljavax/net/ssl/SSLEngineResult; java.base@24 (640 bytes) @ 0x00007f39ae0acdf6 [0x00007f39ae0a9ac0+0x0000000000003336]
J 19745 c2 sun.security.ssl.SSLEngineImpl.wrap([Ljava/nio/ByteBuffer;II[Ljava/nio/ByteBuffer;II)Ljavax/net/ssl/SSLEngineResult; java.base@24 (129 bytes) @ 0x00007f39b4e15108 [0x00007f39b4e15000+0x0000000000000108]
J 19746 c2 jdk.internal.net.http.common.SSLFlowDelegate$Writer.wrapBuffers([Ljava/nio/ByteBuffer;)Ljdk/internal/net/http/common/SSLFlowDelegate$EngineResult; java.net.http@24 (568 bytes) @ 0x00007f39b4e16214 [0x00007f39b4e160a0+0x0000000000000174]
J 19730 c2 jdk.internal.net.http.common.SSLFlowDelegate$Writer.processData()V java.net.http@24 (427 bytes) @ 0x00007f39b4e147f0 [0x00007f39b4e14620+0x00000000000001d0]
J 19708 c2 jdk.internal.net.http.common.SSLFlowDelegate$Writer$WriterDownstreamPusher.run()V java.net.http@24 (8 bytes) @ 0x00007f39b4e0d1dc [0x00007f39b4e0d1a0+0x000000000000003c]
J 19709 c2 jdk.internal.net.http.common.SequentialScheduler$CompleteRestartableTask.run(Ljdk/internal/net/http/common/SequentialScheduler$DeferredCompleter;)V java.net.http@24 (19 bytes) @ 0x00007f39b4e0cedc [0x00007f39b4e0cea0+0x000000000000003c]
J 19705 c2 jdk.internal.net.http.common.SequentialScheduler.runOrSchedule(Ljdk/internal/net/http/common/SequentialScheduler$SchedulableTask;Ljava/util/concurrent/Executor;)V java.net.http@24 (100 bytes) @ 0x00007f39b4e0ddc0 [0x00007f39b4e0dca0+0x0000000000000120]
J 19687 c2 jdk.internal.net.http.common.SSLFlowDelegate$Writer.incoming(Ljava/util/List;Z)V java.net.http@24 (159 bytes) @ 0x00007f39b4e0b390 [0x00007f39b4e0b1a0+0x00000000000001f0]
J 19685 c2 jdk.internal.net.http.common.SSLFlowDelegate$Writer.onSubscribe()V java.net.http@24 (31 bytes) @ 0x00007f39b4e0b7d4 [0x00007f39b4e0b6e0+0x00000000000000f4]

Comments
I have run the test with -Xmixed 70k times, and the doesn't reproduce the failure. I will try -Xcomp now.
15-07-2024

Test failure occurred running test with -Xcomp. That might help reproducibility. Does it reproduce with -Xint, or with only C1 or only C2?
15-07-2024

The core dump file was uploaded to https://compiler-tools.oss-cn-hangzhou.aliyuncs.com/JDK/JBS/JDK-8336341/core.134884.tar.xz
13-07-2024