lwjgl3
lwjgl3 copied to clipboard
NanoVG crash with native compile.
Version
3.3.3
Platform
Linux x64 OS: LinuxMint 21.01
JDK
Tested with JDK: 11, 17, 21 GraalVM: 17 and 21.
Module
NanoVG
Bug description
When i execute without native compile works fine, but when i execute with native compile crash instant. The program crash after execute:
long vg = NanoVGGLES2.nvgCreate(NVG_ANTIALIAS);
Stacktrace or crash log output
[ [ SubstrateSegfaultHandler caught a segfault in thread 0x000056264d2b8380 ] ]
siginfo: si_signo: 11, si_code: 2, si_addr: 0x00007fdcad200028
Current timestamp: 1710250863841
General purpose register values:
RAX 0x00007fdcad200000 is the heap base
RBX 0x000056264d6bdc00 is an unknown value
RCX 0x000056264d6bdca8 is an unknown value
RDX 0x0000000000000000
RBP 0x000056264d2b8380 is a thread
RSI 0x0000000000000000
RDI 0x000056264d2b8380 is a thread
RSP 0x00007ffea37377a8 points into the stack for thread 0x000056264d2b8380
R8 0x000056264d6bcbb0 is an unknown value
R9 0x000056264d6bdc00 is an unknown value
R10 0x000056264d6c95a0 is an unknown value
R11 0x00007fe4ad503ce0 is an unknown value
R12 0x0000000000000001 is an unknown value
R13 0x0000000000000000
R14 0x0000000000000000
R15 0x000056264d2b8380 is a thread
EFL 0x0000000000010206 is an unknown value
RIP 0x000056264ac4b047
Printing Instructions (ip=0x000056264ac4b047):
0x000056264ac4b027: 0xff 0x60 0x38 0xcc 0xcc 0xcc 0xcc 0xcc 0xcc 0x48 0x8b 0x47 0x60 0x48 0x03 0xc1
0x000056264ac4b037: 0xff 0x60 0x50 0xcc 0xcc 0xcc 0xcc 0xcc 0xcc 0x48 0x8b 0x47 0x60 0x48 0x03 0xc2
0x000056264ac4b047: 0xff 0x60 0x28 0xcc 0xcc 0xcc 0xcc 0xcc 0xcc 0x48 0x8b 0x47 0x60 0x48 0x03 0xc1
0x000056264ac4b057: 0xff 0x60 0x40 0xcc 0xcc 0xcc 0xcc 0xcc 0xcc 0x48 0x83 0xec 0x78 0x48 0x89 0x5c
Top of stack (sp=0x00007ffea37377a8):
0x00007ffea37377a8: 0x00007fdc95982116 0x00007fdcad696170
0x00007ffea37377b8: 0x00007fdcaefb6e30 0x00007fdcaefb6e30
0x00007ffea37377c8: 0x00007fdc0000002c 0x000056264d6bd610
0x00007ffea37377d8: 0x000056264ac38479 0x0000002c00000009
0x00007ffea37377e8: 0x00007fdcaefaf478 0x003b5e8f616c6276
0x00007ffea37377f8: 0x00007fdcad80a518 0x00007fdcaefb6e68
0x00007ffea3737808: 0x00007fdc95982070 0x00000008ad5844a0
0x00007ffea3737818: 0x000056264ac55605 0x00007fdc95982070
0x00007ffea3737828: 0x00007fdcad800000 0x000056264b249df8
0x00007ffea3737838: 0x00007ffea3737860 0x00007fdcad200000
0x00007ffea3737848: 0x000056264b249e0b 0x0000000000000000
0x00007ffea3737858: 0x00007fdcad7e4ff0 0x000056264b249df8
0x00007ffea3737868: 0x00007ffea3737850 0x0000000000000000
0x00007ffea3737878: 0x0000000000000003 0x00000001aef011b0
0x00007ffea3737888: 0x0000000100000001 0x00007fdc95982070
0x00007ffea3737898: 0x000056264ab13147 0x0000000000000003
0x00007ffea37378a8: 0x000056264b22c785 0x0000000000000008
0x00007ffea37378b8: 0x000056264cf71958 0x000056264d300230
0x00007ffea37378c8: 0x000056264ab1ce35 0x00007ffea37378a0
0x00007ffea37378d8: 0x000000e04b42b269 0x0000000100000000
0x00007ffea37378e8: 0x000056264abd36ad 0x0000000000000000
0x00007ffea37378f8: 0x0000000000000000 0x0000000000000000
0x00007ffea3737908: 0x0000000000000000 0x000056264cf71bd8
0x00007ffea3737918: 0x00007ffea3737a68 0x0000000100000000
0x00007ffea3737928: 0x0000000000000001 0x00007fe4ad58a040
0x00007ffea3737938: 0x000056264cf6fad0 0x000056264abd3600
0x00007ffea3737948: 0x00007ffea3737a68 0x0000000000000000
0x00007ffea3737958: 0x00007fe4ad312d90 0x0000000000000000
0x00007ffea3737968: 0x000056264abd3600 0x0000000100000000
0x00007ffea3737978: 0x00007ffea3737a68 0x0000000000000000
0x00007ffea3737988: 0x15a3d1da94199486 0x00007ffea3737a68
0x00007ffea3737998: 0x000056264abd3600 0x000056264cf6fad0
Top frame info:
TotalFrameSize in CodeInfoTable 8
Threads:
0x00007fdca8000b80 STATUS_IN_NATIVE (ALLOW_SAFEPOINT) "Reference Handler" - 0x00007fdcad77cdb8, daemon, stack(0x00007fdcaca01000,0x00007fdcad200000)
0x000056264d2b8380 STATUS_IN_JAVA (PREVENT_VM_FROM_REACHING_SAFEPOINT) "main" - 0x00007fdcad77cc38, stack(0x00007ffea2f3a000,0x00007ffea3738000)
VM thread locals for the failing thread 0x000056264d2b8380:
0 (8 bytes): JNIThreadLocalEnvironment.jniFunctions = (bytes)
0x000056264d2b8380: 0x000056264d6bcbb0
8 (8 bytes): StackOverflowCheckImpl.stackBoundaryTL = (Word) 1 (0x0000000000000001)
16 (4 bytes): Safepoint.safepointRequested = (int) 2147396462 (0x7ffeab6e)
20 (4 bytes): StatusSupport.statusTL = (int) 1 (0x00000001)
24 (32 bytes): ThreadLocalAllocation.regularTLAB = (bytes)
0x000056264d2b8398: 0x00007fdcaef00000 0x00007fdcaf000000
0x000056264d2b83a8: 0x00007fdcaefb8000 0x0000000000000000
56 (8 bytes): JavaFrameAnchors.lastAnchor = (Word) 140731640674400 (0x00007ffea3737860)
64 (8 bytes): PlatformThreads.currentVThreadId = (long) 1 (0x0000000000000001)
72 (4 bytes): PlatformThreads.currentThread = (Object) java.lang.Thread (0x00007fdcad77cc38)
80 (8 bytes): SubstrateDiagnostics.threadOnlyAttachedForCrashHandler = (bytes)
0x000056264d2b83d0: 0x0000000000000000
88 (8 bytes): ThreadLocalAllocation.allocatedBytes = (Word) 0 (0x0000000000000000)
96 (8 bytes): VMThreads.IsolateTL = (Word) 140585774088192 (0x00007fdcad200000)
104 (8 bytes): VMThreads.OSThreadHandleTL = (Word) 140620134770496 (0x00007fe4ad2e6740)
112 (8 bytes): VMThreads.OSThreadIdTL = (Word) 140620134770496 (0x00007fe4ad2e6740)
120 (8 bytes): VMThreads.StackBase = (Word) 140731640676352 (0x00007ffea3738000)
128 (8 bytes): VMThreads.StackEnd = (Word) 140731632295936 (0x00007ffea2f3a000)
136 (8 bytes): VMThreads.StartedByCurrentIsolate = (bytes)
0x000056264d2b8408: 0x0000000000000000
144 (8 bytes): VMThreads.nextTL = (Word) 0 (0x0000000000000000)
152 (8 bytes): VMThreads.unalignedIsolateThreadMemoryTL = (Word) 94722503443312 (0x000056264d2b8370)
160 (4 bytes): AccessControlContextStack = (Object) java.util.ArrayDeque (0x00007fdcaef01660)
164 (4 bytes): ExceptionUnwind.currentException = (Object) null
168 (4 bytes): IsolatedCompileClient.currentClient = (Object) null
172 (4 bytes): IsolatedCompileContext.currentContext = (Object) null
176 (4 bytes): JNIObjectHandles.handles = (Object) com.oracle.svm.core.handles.ThreadLocalHandles (0x00007fdcaef01130)
180 (4 bytes): JNIThreadLocalPendingException.pendingException = (Object) java.lang.NullPointerException (0x00007fdcaefb7950)
184 (4 bytes): JNIThreadLocalPinnedObjects.pinnedObjectsListHead = (Object) null
188 (4 bytes): JNIThreadOwnedMonitors.ownedMonitors = (Object) null
192 (4 bytes): NoAllocationVerifier.openVerifiers = (Object) null
196 (4 bytes): ThreadingSupportImpl.activeTimer = (Object) null
200 (4 bytes): ActionOnExitSafepointSupport.actionTL = (int) 0 (0x00000000)
204 (4 bytes): ActionOnTransitionToJavaSupport.actionTL = (int) 0 (0x00000000)
208 (4 bytes): ImplicitExceptions.implicitExceptionsAreFatal = (int) 0 (0x00000000)
212 (4 bytes): StackOverflowCheckImpl.yellowZoneStateTL = (int) 2130640638 (0x7efefefe)
216 (4 bytes): StatusSupport.safepointBehaviorTL = (int) 1 (0x00000001)
220 (4 bytes): ThreadingSupportImpl.currentPauseDepth = (int) 0 (0x00000000)
No VMOperation in progress
The 15 most recent VM operation status changes (oldest first):
Counters:
Java frame anchors for the failing thread 0x000056264d2b8380:
Anchor 0x00007ffea3737860 LastJavaSP 0x00007ffea3737850 LastJavaIP 0x000056264b249df8
Stacktrace for the failing thread 0x000056264d2b8380:
SP 0x00007ffea37377a8 IP 0x000056264ac4b047 com.oracle.svm.core.code.CodeInfo@0x7fdcad73c200 name = image code
SP 0x00007ffea37377b0 IP 0x00007fdc95982116 IP is not within Java code. Aborting stack trace printing.
Warning: stack pointer is not aligned to 16 bytes.
Starting the stack walk in a possible caller:
SP 0x00007ffea37377e0 IP 0x000056264ac38479 [image code] java.util.concurrent.locks.ReentrantLock.unlock(ReentrantLock.java:494)
SP 0x00007ffea37377e0 IP 0x000056264ac38479 [image code] com.oracle.svm.core.jdk.NativeLibrarySupport.findSymbol(NativeLibrarySupport.java:230)
SP 0x00007ffea3737820 IP 0x000056264ac55605 [image code] com.oracle.svm.core.jni.access.JNINativeLinkage.getOrFindEntryPoint(JNINativeLinkage.java:147)
SP 0x00007ffea3737850 IP 0x000056264b249e0b [image code] org.lwjgl.nanovg.NanoVGGLES2.nnvgCreate(Native Method)
SP 0x00007ffea37378a0 IP 0x000056264ab13147 [image code] org.lwjgl.nanovg.NanoVGGLES2.nvgCreate(NanoVGGLES2.java:111)
SP 0x00007ffea37378a0 IP 0x000056264ab13147 [image code] br.nullexcept.mux.test.TestNanoVG.main(TestNanoVG.java:60)
SP 0x00007ffea37378d0 IP 0x000056264ab1ce35 [image code] com.oracle.svm.core.JavaMainWrapper.runCore0(JavaMainWrapper.java:178)
SP 0x00007ffea37378f0 IP 0x000056264abd36ad [image code] com.oracle.svm.core.JavaMainWrapper.runCore(JavaMainWrapper.java:136)
SP 0x00007ffea37378f0 IP 0x000056264abd36ad [image code] com.oracle.svm.core.JavaMainWrapper.doRun(JavaMainWrapper.java:233)
SP 0x00007ffea37378f0 IP 0x000056264abd36ad [image code] com.oracle.svm.core.JavaMainWrapper.run(JavaMainWrapper.java:219)
SP 0x00007ffea37378f0 IP 0x000056264abd36ad [image code] com.oracle.svm.core.code.IsolateEnterStub.JavaMainWrapper_run_3148eece06270530b6e0d4d60311411342c82698(IsolateEnterStub.java:0)
VM mutexes:
mutex "thread" is unlocked.
mutex "referencePendingList" is unlocked.
mutex "mainVMOperationControlWorkQueue" is unlocked.
mutex "freeList" is unlocked.
AOT compiled code is mapped at 0x000056264ab13000 - 0x000056264b42a91f
Heap settings and statistics:
Supports isolates: true
Heap base: 0x00007fdcad200000
Object reference size: 4
Aligned chunk size: 1048576
Incremental collections: 0
Complete collections: 0
Native image heap boundaries:
ReadOnly Primitives: 0x00007fdcad301030 - 0x00007fdcad4e22d8
ReadOnly References: 0x00007fdcad4e22d8 - 0x00007fdcad63f448
ReadOnly Relocatables: 0x00007fdcad640000 - 0x00007fdcad6c0240
Writable Primitives: 0x00007fdcad6c1000 - 0x00007fdcad7534a0
Writable References: 0x00007fdcad7534a0 - 0x00007fdcad8e36e8
Writable Huge: 0x00007fdcad900038 - 0x00007fdcad92d440
ReadOnly Huge: 0x00007fdcad92e038 - 0x00007fdcaee28b28
Heap:
Young generation:
Eden:
edenSpace:
aligned: 0/0 unaligned: 0/0
Survivors:
Survivor-1 From:
aligned: 0/0 unaligned: 0/0
Survivor-1 To:
aligned: 0/0 unaligned: 0/0
Survivor-2 From:
aligned: 0/0 unaligned: 0/0
Survivor-2 To:
aligned: 0/0 unaligned: 0/0
Survivor-3 From:
aligned: 0/0 unaligned: 0/0
Survivor-3 To:
aligned: 0/0 unaligned: 0/0
Survivor-4 From:
aligned: 0/0 unaligned: 0/0
Survivor-4 To:
aligned: 0/0 unaligned: 0/0
Survivor-5 From:
aligned: 0/0 unaligned: 0/0
Survivor-5 To:
aligned: 0/0 unaligned: 0/0
Survivor-6 From:
aligned: 0/0 unaligned: 0/0
Survivor-6 To:
aligned: 0/0 unaligned: 0/0
Survivor-7 From:
aligned: 0/0 unaligned: 0/0
Survivor-7 To:
aligned: 0/0 unaligned: 0/0
Survivor-8 From:
aligned: 0/0 unaligned: 0/0
Survivor-8 To:
aligned: 0/0 unaligned: 0/0
Survivor-9 From:
aligned: 0/0 unaligned: 0/0
Survivor-9 To:
aligned: 0/0 unaligned: 0/0
Survivor-10 From:
aligned: 0/0 unaligned: 0/0
Survivor-10 To:
aligned: 0/0 unaligned: 0/0
Survivor-11 From:
aligned: 0/0 unaligned: 0/0
Survivor-11 To:
aligned: 0/0 unaligned: 0/0
Survivor-12 From:
aligned: 0/0 unaligned: 0/0
Survivor-12 To:
aligned: 0/0 unaligned: 0/0
Survivor-13 From:
aligned: 0/0 unaligned: 0/0
Survivor-13 To:
aligned: 0/0 unaligned: 0/0
Survivor-14 From:
aligned: 0/0 unaligned: 0/0
Survivor-14 To:
aligned: 0/0 unaligned: 0/0
Survivor-15 From:
aligned: 0/0 unaligned: 0/0
Survivor-15 To:
aligned: 0/0 unaligned: 0/0
Old generation:
oldFromSpace:
aligned: 0/0 unaligned: 0/0
oldToSpace:
aligned: 0/0 unaligned: 0/0
Unused:
aligned: 0/0