V8 Maglev JIT causes STATUS_STACK_BUFFER_OVERRUN (0xC0000409) on Windows 11 Insider build 26200
Nobody has claimed this yet.
- Dominant language
- JavaScript
- Stars
- 122k
- Forks
- 37.3k
- Avg merge
- 4d 2h
- Merged PRs (30d)
- 283
Description
What happened?
Node.js processes crash with exit code -1073740791 (0xC0000409 / STATUS_STACK_BUFFER_OVERRUN) within 20-70 seconds of startup when running a non-trivial application (WebSocket server with HTTP, Telegram bot polling, and plugin system) on Windows 11 Insider (Canary channel).
The crash is caused by V8's Maglev JIT compiler tier. Workaround: --no-maglev flag eliminates the crash entirely.
Reproduction
Environment:
- Node.js: v25.8.0
- V8: 14.1.146.11-node.20
- OS: Windows 11 Pro for Workstations, Insider Canary build 10.0.26200.0
- Arch: x64
Steps:
- Run a long-lived Node.js application that uses
fetch(), WebSocket, and timers on Windows 11 Insider build 26200 - Process crashes with exit code
-1073740791(0xC0000409) within 20-70 seconds - No JavaScript stack trace — the crash is in native JIT-compiled code via
__fastfail
Flags tested:
| Flag | Crash? | fetch() works? |
|---|---|---|
| (none) | Yes — crashes in 20-70s | Yes |
--jitless |
No | No — undici fetch broken |
--no-maglev |
No | Yes |
--no-turbofan |
No | Yes |
--no-maglev is the minimal workaround — disabling only the Maglev tier prevents the crash while keeping TurboFan and fetch() functional.
Additional context:
- A bare Node.js HTTP server (
http.createServer) does NOT crash — the issue requires enough code to trigger Maglev optimization - Crash bypasses Windows Error Reporting (
__fastfail/ SEH) - Windows Event Viewer shows the Insider build has kernel-level instability (BlueScreen events, VIDEO_ENGINE_TIMEOUT_DETECTED), suggesting stricter CFG enforcement
- The same application runs without issues on Windows Server 2019 and stable Windows builds
Expected behavior
Node.js should not crash with STATUS_STACK_BUFFER_OVERRUN. Maglev-compiled code should respect Windows CFG/CET enforcement on Insider builds.
Workaround
Pass --no-maglev as a command-line flag (cannot be set via NODE_OPTIONS):
node --no-maglev app.js
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
No source file or test is identified. Start by reproducing the crash on Windows 11 Insider build 26200 with Node.js v25.8.0, comparing default execution with --no-maglev and --no-turbofan. Done means identifying a confirmed Maglev/Windows cause and preventing STATUS_STACK_BUFFER_OVERRUN without requiring --no-maglev.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- javascript, nodejs
- Domain
- backend, operating-systems
- Issue type
- Bug
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Quiet
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100