Open airbreather opened 1 month ago
Scanning through some other "Illegal instruction" reports, it looks like this might be useful:
No repro in 1.1.29 after a hundred attempts or so. I intend to do a bisect to see when this was fixed, so that I can maybe throw together a PR with an automated test for this situation. If you don't want to keep this open while I try that out, then go ahead and close this.
How can we reproduce the crash?
This happens intermittently (hooray...) in VS Code (Arch-based, AUR package
visual-studio-code-bin
version1.93.0-1
). Unfortunately, it seems to involve some of the weird things that happen when it's run in VS Code: if I just dobun run mre.ts >/dev/null
in a loop from a command-line, it never hits the panic.I've cut it down to this and redacted some other people's private information from it (so the "args" from the crash log won't match my log output exactly): mre.zip
To repro:
bun install
in the directory. It doesn't seem to be required for the repro, but IntelliSense is nice...mre.ts
This usually takes a few dozen times to trigger for me, but sometimes I've gotten it after only three re-runs in a row. The reported address is always the same,
0x579130D
, but it doesn't always panic at the same place spot in the actual program output. For what it's worth, "Debug: Start Debugging" (shortcut F5 for me) seems to hit it much less frequently, but I have indeed seen two panics in that mode (out of probably a hundred times hitting F5).Full disclosure, this happens rarely for me, and it's a side project, so I'm not going to watch this issue report too closely. It smells a bit like it could be a "we've seen this before but never had a remotely consistent way to reproduce it" thing, and those always drive me nuts when I see them in my stuff, so I wanted to take a shot at making a MRE for this before moving on.
Relevant log output
Stack Trace (bun.report)
Bun v1.1.27 (
267afa2
) on linux x86_64 [AutoCommand]Illegal instruction at address 0x0579130D
??
ld-temp.o:0
:bmalloc_heap_config_specialized_try_deallocate_not_small_exclusive_segregated
ld-temp.o:0
:JSC::IsoInlinedHeapCellType<JSC::JSString>::finishSweep
ld-temp.o:0
:JSC::MarkedBlock::Handle::sweep
ld-temp.o:0
:JSC::LocalAllocator::tryAllocateIn
ld-temp.o:0
:JSC::LocalAllocator::allocateSlowCase
LocalAllocatorInlines.h:41
:JSC::JSString::create
JSString.h:947
:WTF::Detail::CallableWrapper<Bun::BunInspectorConnection::sendMessageToDebuggerThread(...)::'lambda'(...), void, WebCore::ScriptExecutionContext&>::call
Function.h:82
:Bun__performTask
event_loop.zig:300
:src.bun.js.event_loop.EventLoop.tickQueueWithCount__anon_123577