One afternoon my mouse froze. Not the app — the whole WSL window. Ctrl+C did nothing. docker ps in another pane just spun. Windows Task Manager showed vmmemWSL sitting at the ceiling and not moving. The only way out was closing every WSL terminal and running wsl --shutdown from PowerShell, then waiting for the VM to fully die before starting it back up.
The trigger, once I found it, was almost funny: I'd added an icon pack for a crypto UI and imported it the "easy" way.
The setup
Next.js 16 on Turbopack, running inside WSL2. The host machine has 16GB of RAM, and I deliberately cap the WSL VM in .wslconfig — a hard memory and swap ceiling — instead of trusting WSL2's default "grow until the host chokes" behavior. Windows needs headroom too; if the VM doesn't have a ceiling, it'll take all of it.
That ceiling is usually a non-issue. next dev compiles routes on demand, memory rises a bit as you click around, and it settles. Until it doesn't.







