nodejs / nodejs/node

Node.js v24.2.0 Segmentation Fault on WSL2

Offen
#58,690 6 Kommentare 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen

Dieses Issue hat noch niemand übernommen.

stale
Vorherrschende Sprache
JavaScript
Sterne
122k
Forks
37.3k
Ø Merge
4 T. 2 Std.
Gemergte PRs (30 T.)
283

Beschreibung

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.

Beitragsleitfaden

Beitragsleitfaden öffnen

Erste Schritte

  1. Lies das ganze Issue und danach den Beitragsleitfaden des Projekts.
  2. Schreib ins Issue, dass du es übernimmst — das erspart doppelte Arbeit.
  3. Forke das Repository und arbeite in einem Branch.
  4. Öffne einen Pull Request, der die Issue-Nummer nennt.

Rechercherichtung

Beginne damit, den Absturz mit node --version unter WSL2 mit v24.2.0 zu reproduzieren, und vergleiche ihn anschließend mit v24.1.0 und v22.16.0. Untersuche die Änderungen in v24.2.0 im Zusammenhang mit libuv 1.51.0, dem aufgeführten V8-cherry-pick und nghttp2 1.65.0. Als erledigt gilt die Aufgabe, wenn Node in der gemeldeten WSL2-Umgebung ohne Segmentation Fault erfolgreich startet.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

Tech-Stack
javascript, nodejs
Bereich
operating-systems
Issue-Typ
Bug
Schwierigkeit
4/5
Geschätzter Aufwand
3-5 Tage
Aktivitätsstatus
Aktiv
Klarheit
Größtenteils klar
Anfängerfreundlichkeit
45/100

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.