nodejs / nodejs/node

V8 Maglev JIT causes STATUS_STACK_BUFFER_OVERRUN (0xC0000409) on Windows 11 Insider build 26200

Aperta
#62,260 8 commenti 2 reazioni 0 assegnatari Vedi su GitHub

Nessuno ha ancora preso questa issue.

v8 engine
Lingua principale
JavaScript
Stelle
122k
Fork
37.3k
Merge medio
4g 2h
PR unite (30g)
283

Descrizione

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:

  1. Run a long-lived Node.js application that uses fetch(), WebSocket, and timers on Windows 11 Insider build 26200
  2. Process crashes with exit code -1073740791 (0xC0000409) within 20-70 seconds
  3. 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

Guida per i contributori

Apri la guida per i contributori

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Direzione di ricerca

Non è identificato alcun file sorgente né alcun test. Inizia riproducendo il crash su Windows 11 Insider build 26200 con Node.js v25.8.0, confrontando l'esecuzione predefinita con --no-maglev e --no-turbofan. Il lavoro sarà completato quando sarà identificata una causa confermata relativa a Maglev/Windows e sarà impedito STATUS_STACK_BUFFER_OVERRUN senza richiedere --no-maglev.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Valutazione

Stack tecnologico
javascript, nodejs
Ambito
backend, operating-systems
Tipo di issue
Bug
Difficoltà
5/5
Tempo stimato
Più di una settimana
Stato di attività
Tranquilla
Chiarezza
Abbastanza chiara
Idoneità per principianti
35/100

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.