microsoft / microsoft/WSL

WSL1: BSOD 0x3B in LXCORE!LxpNtStateThreadQueueApc (NULL thread passed to KeInsertQueueApc) when SIGWINCH is sent on pty resize

Open
#41,646 5 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
C++
Stars
33.7k
Forks
1.8k
Avg merge
3d 17h
Merged PRs (30d)
116

Description

### Windows Version

Microsoft Windows [Version 10.0.26200.9445]

### WSL Version

2.7.8.0

### Are you using WSL 1 or WSL 2?

- [ ] WSL 2
- [x] WSL 1

### Kernel Version

Linux version 4.4.0-26100-Microsoft (Microsoft@Microsoft.com) (gcc version 5.4.0 (GCC) ) #9278-Microsoft Fri Jan 01 08:00:00 PST 2016

### Distro Version

Ubuntu 24.04.4 LTS

### Other Software

- Environment: Windows 11 Enterprise 25H2 build 26200.9445, WSL 2.7.8.0 in WSL1 mode, LXCORE.SYS 10.0.26100.9278, Ubuntu 24.04.4, and VS Code Remote-WSL 0.104.3.
- Crashing process: one of VS Code Server's bundled node processes. Its terminal-host child owns the integrated terminals, which matches the resize path in the dump.
- Evidence: the bugcheck arguments, the faulting instruction with registers (rbx=0, read at +0x220), and the full symbolized 17-frame stack.
- WER report ID: 01a30c72-7374-4557-9b09-f7143a2d0e25.

### Repro Steps

No repro - only happened once in the middle of vscode opening a workspace inside of the ubuntu wsl. BSOD before vscode fully loaded the workspace.

### Expected Behavior

No crash ig?

### Actual Behavior

Bugcheck

### Diagnostic Logs

[kd-analysis.txt](https://github.com/user-attachments/files/32383091/kd-analysis.txt)

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with kd-analysis.txt and the symbolized 17-frame stack, focusing on the reported LXCORE.SYS pty-resize/SIGWINCH path and NULL thread passed to KeInsertQueueApc. The report has no reproduction; a useful outcome would be a confirmed cause and a reliable reproduction or regression test that demonstrates the BSOD no longer occurs.

Written by the indexing model from the issue text.

Assessment

Tech stack
cpp
Domain
operating-systems
Issue type
Bug
Difficulty
5/5
Estimated time
Over a week
Activity status
Active
Clarity
Needs clarification
Newbie friendliness
15/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.