nodejs / nodejs/node

Node.js v24.2.0 Segmentation Fault on WSL2

Aperta
#58,690 6 commenti 0 reazioni 0 assegnatari Vedi su GitHub

Nessuno ha ancora preso questa issue.

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

Descrizione

Version

v24.2.0

Platform
Linux DESKTOP-QV82TM5 5.15.167.4-microsoft-standard-WSL2 #1 SMP Tue Nov 5 00:21:55 UTC 2024 x86_64 GNU/Linux
Subsystem

No response

What steps will reproduce the bug?

Install v24.2.0

nvm install v24.2.0
nvm use v24.2.0

Basic commands that trigger segfault

node --version # Segmentation fault
npm --version # Segmentation fault

How often does it reproduce? Is there a required condition?

[svnbjrn@DESKTOP-QV82TM5 W15]$ node -v
Segmentation fault

What is the expected behavior? Why is that the expected behavior?

[svnbjrn@DESKTOP-QV82TM5 W15]$ node -v
v24.1.0

What do you see instead?

[svnbjrn@DESKTOP-QV82TM5 W15]$ node -v
Segmentation fault

Additional information

As you can probably tell the following was absolutely written by Claude:

Node.js v24.2.0 Segmentation Fault on WSL2

Summary

Node.js v24.2.0 consistently crashes with segmentation faults on WSL2 + Arch Linux, while v24.1.0 works perfectly.

Environment

  • OS: Arch Linux on WSL2
  • Kernel: 5.15.167.4-microsoft-standard-WSL2
  • Node.js versions tested:
    • v24.1.0: ✅ Works fine
    • v24.2.0: ❌ Segfaults consistently
    • v22.16.0 (LTS): ✅ Works fine

Reproduction

# Install v24.2.0
nvm install v24.2.0
nvm use v24.2.0

# Basic commands that trigger segfault
node --version    # Segmentation fault
npm --version     # Segmentation fault

Crash Details

Jun 12 09:34:50 DESKTOP-QV82TM5 kernel: potentially unexpected fatal signal 11.
Jun 12 09:34:50 DESKTOP-QV82TM5 kernel: CPU: 12 PID: 16666 Comm: node Not tainted 5.15.167.4-microsoft-standard-WSL2 #1
Jun 12 09:34:50 DESKTOP-QV82TM5 kernel: RIP: 0033:0x7ff67b041bcb
Jun 12 09:34:50 DESKTOP-QV82TM5 kernel: Code: Unable to access opcode bytes at RIP 0x7ff67b041ba1.
Jun 12 09:34:50 DESKTOP-QV82TM5 kernel: RAX: fffffffffffffff2 RBX: 0000562e10ab6740 RCX: 00007ff67b041bcb

Suspected Root Cause

Based on the v24.2.0 changelog, likely candidates:

  1. libuv update to 1.51.0 (most likely) - handles system calls where WSL2 translation could fail
  2. V8 cherry-pick 249de887a8d3 - engine-level memory management changes
  3. nghttp2 update to 1.65.0 - less likely but possible

Additional Info

  • Affects both basic startup (node --version) and any Node.js execution
  • Issue is specific to WSL2 environment
  • Same binary works on native Linux systems
  • Regression introduced between v24.1.0 and v24.2.0

Workaround

Use Node.js v24.1.0 or LTS versions until fixed.

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

Inizia riproducendo il crash con node --version su WSL2 usando v24.2.0, quindi confrontalo con v24.1.0 e v22.16.0. Analizza le modifiche di v24.2.0 relative a libuv 1.51.0, al cherry-pick di V8 indicato e a nghttp2 1.65.0. Il lavoro è completato quando Node si avvia correttamente nell’ambiente WSL2 segnalato senza un errore di segmentazione.

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

Valutazione

Stack tecnologico
javascript, nodejs
Ambito
operating-systems
Tipo di issue
Bug
Difficoltà
4/5
Tempo stimato
3-5 giorni
Stato di attività
Attiva
Chiarezza
Abbastanza chiara
Idoneità per principianti
45/100

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.