Hi,
Since recently, LexFloatServer crashes immediately on startup with an access violation (0xc0000005). The issue occurs consistently across five machines running Windows 11 and was found when trying to activate LexFloatServer on a customer’s server.
Based on my analysis:
- LexFloatServer was working fine before.
- For the crash to occur, a product file (existing and valid or not) has to be specified (via -p or the config.yml).
- The crash happens even in Safe Mode, with different product files, and with security software disabled.
- I checked versions 4.13.3 (latest) and 3.12.0 (because I had it at hand and know that it worked at some point).
- The affected machines all have Windows Update KB5052085 installed.
- On a machine without this update, LexFloatServer was working. After installing KB5052085, it started crashing as well.
- KB5052085 cannot be uninstalled, as it is a Servicing Stack update.
Could you check if this update might impact LexFloatServer/LexActivator, or suggest any troubleshooting steps?
Thanks!
Console Output when crashing:
This text will be hidden
Exception 0xc0000005 0x8 0x99346c 0x99346c
PC=0x99346c
signal arrived during external code execution
runtime.cgocall(0x782ae0, 0xc000115d60)
C:/hostedtoolcache/windows/go/1.21.13/x64/src/runtime/cgocall.go:157 +0x3e fp=0xc000115d38 sp=0xc000115d00 pc=0x4054be
github.com/cryptlex/lexfloatserver/services/lexactivator._Cfunc_SetOnPremiseFloatingLicenseType()
_cgo_gotypes.go:683 +0x51 fp=0xc000115d60 sp=0xc000115d38 pc=0x7574f1
github.com/cryptlex/lexfloatserver/services/lexactivator.SetOnPremiseFloatingLicenseType(...)
D:/a/lexfloatserver/lexfloatserver/services/lexactivator/lexactivator.go:39
github.com/cryptlex/lexfloatserver/services/server_license.ParseProductFile({0xc00000aad8, 0x7}, 0x0)
D:/a/lexfloatserver/lexfloatserver/services/server_license/server_license.go:79 +0x18d fp=0xc000115df0 sp=0xc000115d60 pc=0x76852d
main.main()
D:/a/lexfloatserver/lexfloatserver/main.go:223 +0x156 fp=0xc000115f40 sp=0xc000115df0 pc=0x781416
runtime.main()
C:/hostedtoolcache/windows/go/1.21.13/x64/src/runtime/proc.go:267 +0x2b2 fp=0xc000115fe0 sp=0xc000115f40 pc=0x43af92
runtime.goexit()
C:/hostedtoolcache/windows/go/1.21.13/x64/src/runtime/asm_amd64.s:1650 +0x1 fp=0xc000115fe8 sp=0xc000115fe0 pc=0x468281
goroutine 2 [force gc (idle)]:
runtime.gopark(0x0?, 0x0?, 0x0?, 0x0?, 0x0?)
C:/hostedtoolcache/windows/go/1.21.13/x64/src/runtime/proc.go:398 +0xce fp=0xc000053fa8 sp=0xc000053f88 pc=0x43b3ae
runtime.goparkunlock(...)
C:/hostedtoolcache/windows/go/1.21.13/x64/src/runtime/proc.go:404
runtime.forcegchelper()
C:/hostedtoolcache/windows/go/1.21.13/x64/src/runtime/proc.go:322 +0xb8 fp=0xc000053fe0 sp=0xc000053fa8 pc=0x43b238
runtime.goexit()
C:/hostedtoolcache/windows/go/1.21.13/x64/src/runtime/asm_amd64.s:1650 +0x1 fp=0xc000053fe8 sp=0xc000053fe0 pc=0x468281
created by runtime.init.6 in goroutine 1
C:/hostedtoolcache/windows/go/1.21.13/x64/src/runtime/proc.go:310 +0x1a
goroutine 3 [GC sweep wait]:
runtime.gopark(0x0?, 0x0?, 0x0?, 0x0?, 0x0?)
C:/hostedtoolcache/windows/go/1.21.13/x64/src/runtime/proc.go:398 +0xce fp=0xc000055f78 sp=0xc000055f58 pc=0x43b3ae
runtime.goparkunlock(...)
C:/hostedtoolcache/windows/go/1.21.13/x64/src/runtime/proc.go:404
runtime.bgsweep(0x0?)
C:/hostedtoolcache/windows/go/1.21.13/x64/src/runtime/mgcsweep.go:280 +0x94 fp=0xc000055fc8 sp=0xc000055f78 pc=0x425954
runtime.gcenable.func1()
C:/hostedtoolcache/windows/go/1.21.13/x64/src/runtime/mgc.go:200 +0x25 fp=0xc000055fe0 sp=0xc000055fc8 pc=0x41ace5
runtime.goexit()
C:/hostedtoolcache/windows/go/1.21.13/x64/src/runtime/asm_amd64.s:1650 +0x1 fp=0xc000055fe8 sp=0xc000055fe0 pc=0x468281
created by runtime.gcenable in goroutine 1
C:/hostedtoolcache/windows/go/1.21.13/x64/src/runtime/mgc.go:200 +0x66
goroutine 4 [GC scavenge wait]:
runtime.gopark(0xc00001a070?, 0xaf6528?, 0x1?, 0x0?, 0xc000050b60?)
C:/hostedtoolcache/windows/go/1.21.13/x64/src/runtime/proc.go:398 +0xce fp=0xc000065f70 sp=0xc000065f50 pc=0x43b3ae
runtime.goparkunlock(...)
C:/hostedtoolcache/windows/go/1.21.13/x64/src/runtime/proc.go:404
runtime.(*scavengerState).park(0xd2d040)
C:/hostedtoolcache/windows/go/1.21.13/x64/src/runtime/mgcscavenge.go:425 +0x49 fp=0xc000065fa0 sp=0xc000065f70 pc=0x423229
runtime.bgscavenge(0x0?)
C:/hostedtoolcache/windows/go/1.21.13/x64/src/runtime/mgcscavenge.go:653 +0x3c fp=0xc000065fc8 sp=0xc000065fa0 pc=0x4237bc
runtime.gcenable.func2()
C:/hostedtoolcache/windows/go/1.21.13/x64/src/runtime/mgc.go:201 +0x25 fp=0xc000065fe0 sp=0xc000065fc8 pc=0x41ac85
runtime.goexit()
C:/hostedtoolcache/windows/go/1.21.13/x64/src/runtime/asm_amd64.s:1650 +0x1 fp=0xc000065fe8 sp=0xc000065fe0 pc=0x468281
created by runtime.gcenable in goroutine 1
C:/hostedtoolcache/windows/go/1.21.13/x64/src/runtime/mgc.go:201 +0xa5
goroutine 5 [finalizer wait]:
runtime.gopark(0x198?, 0x89d6e0?, 0x1?, 0xc3?, 0x0?)
C:/hostedtoolcache/windows/go/1.21.13/x64/src/runtime/proc.go:398 +0xce fp=0xc000057e20 sp=0xc000057e00 pc=0x43b3ae
runtime.runfinq()
C:/hostedtoolcache/windows/go/1.21.13/x64/src/runtime/mfinal.go:193 +0x107 fp=0xc000057fe0 sp=0xc000057e20 pc=0x419d47
runtime.goexit()
C:/hostedtoolcache/windows/go/1.21.13/x64/src/runtime/asm_amd64.s:1650 +0x1 fp=0xc000057fe8 sp=0xc000057fe0 pc=0x468281
created by runtime.createfing in goroutine 1
C:/hostedtoolcache/windows/go/1.21.13/x64/src/runtime/mfinal.go:163 +0x3d
goroutine 6 [syscall]:
runtime.notetsleepg(0x0?, 0x0?)
C:/hostedtoolcache/windows/go/1.21.13/x64/src/runtime/lock_sema.go:294 +0x31 fp=0xc000067fa0 sp=0xc000067f58 pc=0x40d051
os/signal.signal_recv()
C:/hostedtoolcache/windows/go/1.21.13/x64/src/runtime/sigqueue.go:152 +0x29 fp=0xc000067fc0 sp=0xc000067fa0 pc=0x463e49
os/signal.loop()
C:/hostedtoolcache/windows/go/1.21.13/x64/src/os/signal/signal_unix.go:23 +0x13 fp=0xc000067fe0 sp=0xc000067fc0 pc=0x4dc753
runtime.goexit()
C:/hostedtoolcache/windows/go/1.21.13/x64/src/runtime/asm_amd64.s:1650 +0x1 fp=0xc000067fe8 sp=0xc000067fe0 pc=0x468281
created by os/signal.Notify.func1.1 in goroutine 1
C:/hostedtoolcache/windows/go/1.21.13/x64/src/os/signal/signal.go:151 +0x1f
goroutine 7 [chan receive]:
runtime.gopark(0x0?, 0x0?, 0x0?, 0x0?, 0x0?)
C:/hostedtoolcache/windows/go/1.21.13/x64/src/runtime/proc.go:398 +0xce fp=0xc000061ef8 sp=0xc000061ed8 pc=0x43b3ae
runtime.chanrecv(0xc00006e240, 0x0, 0x1)
C:/hostedtoolcache/windows/go/1.21.13/x64/src/runtime/chan.go:583 +0x3d0 fp=0xc000061f70 sp=0xc000061ef8 pc=0x407bb0
runtime.chanrecv1(0x0?, 0x0?)
C:/hostedtoolcache/windows/go/1.21.13/x64/src/runtime/chan.go:442 +0x12 fp=0xc000061f98 sp=0xc000061f70 pc=0x4077b2
main.setupCloseHandler.func1()
D:/a/lexfloatserver/lexfloatserver/main.go:162 +0x1d fp=0xc000061fe0 sp=0xc000061f98 pc=0x7811dd
runtime.goexit()
C:/hostedtoolcache/windows/go/1.21.13/x64/src/runtime/asm_amd64.s:1650 +0x1 fp=0xc000061fe8 sp=0xc000061fe0 pc=0x468281
created by main.setupCloseHandler in goroutine 1
D:/a/lexfloatserver/lexfloatserver/main.go:161 +0xb6
rax 0xc000116000
rbx 0xc000115d60
rcx 0xd2e1f8
rdi 0xc000116000
rsi 0xd2d980
rbp 0xc000115cf0
rsp 0x129f9f8
r8 0xd2e1a0
r9 0x0
r10 0x3fff
r11 0xc00000b272
r12 0xc000115b48
r13 0xd2e1a0
r14 0xc000050000
r15 0x127
rip 0x99346c
rflags 0x10206
cs 0x33
fs 0x53
gs 0x2b