Coding Agents & Terminal · recorded 2026-08-31 · applies to 1 tool(s) ✓ Verified

Problem: WSL fails to start a distro with WslRegisterDistribution failed (0x800701bc / 0x80370102) —— Trove problem library

Verified 2026-08-31WslRegisterDistribution failed — 0x800701bc is a missing kernel (wsl --update on Store builds; kernel update package otherwise); 0x80370102 means virtualization is off (bcdedit /set hypervisorlaunchtype auto).

Quick fix

# Admin PowerShell, pick the line for YOUR error code:
# 0x800701bc (kernel missing, most frequent) — Store WSL first choice:
wsl --update
# 0x800701bc non-Store: install the official kernel update package wsl_update_x64.msi (see official manual install guide)

# 0x80370102 (virtualization not active):
bcdedit /set hypervisorlaunchtype auto
# then: Control Panel → Turn Windows features on or off → check "Virtual Machine Platform" → restart

# 0x80370114 (Windows Hypervisor Platform missing):
dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart

# 0x80040154 (feature disabled, common after Windows Update):
# Control Panel → Turn Windows features on or off → check "Windows Subsystem for Linux" + "Virtual Machine Platform" → restart

# 0x800706f7 (network software blocking):
netsh winsock reset

All commands need admin; anything touching feature toggles/boot type requires a restart to take effect.

What you will run into

Right after installing WSL or a Windows update, double-clicking Ubuntu (or any distro) flashes a black window and fails:

WslRegisterDistribution failed with error: 0x800701bc
Error: 0x800701bc WSL 2 ? ? ?

On Chinese systems the message is often garbled or truncated; Windows 11 commonly shows Error code: Wsl/Service/....

0x800701bc is the most frequent WSL startup failure — in most cases it means "kernel update package not installed after upgrading WSL1 to WSL2".

Its siblings 0x80370102 / 0x80040154 / 0x80370114 / 0x800706f7 each mean a different root cause (virtualization off / feature disabled / component missing / network software blocking). Read the error code first, don't try fixes one by one.

Why this happens

"Registering a distro" = the Windows WSL service (LxssManager) creates a WSL2 VM for the distro and mounts its filesystem.

This step depends on three things: the WSL2 kernel (C:\Windows\System32\lxss\tools\kernel), the Virtual Machine Platform feature (Virtual Machine Platform / hypervisorlaunchtype), and the WSL service itself (COM components).

The error code is the index of which one is missing:

  • 0x800701bc = kernel component missing (no kernel update package after WSL1→WSL2 upgrade; Store WSL not wsl --updated to latest);
  • 0x80370102 = virtualization not active (disabled in BIOS / "Virtual Machine Platform" off / hypervisorlaunchtype not auto);
  • 0x80370114 = "Windows Hypervisor Platform" feature missing (common on fresh Win11);
  • 0x80040154 = WSL feature or COM registration broken (commonly the feature got disabled after a Windows update);
  • 0x800706f7 = third-party network software (proxy/security suite) blocking the WSL service's internal RPC.

A WSL2 distro is not "an extracted folder" — the LxssManager service creates a lightweight VM: the kernel comes from lxss/tools/kernel on the Windows side, and the disk is a vhdx virtual disk.

Registration failure means one prerequisite for creating the VM is not met, and the error codes layer exactly as "kernel → virtualization → feature → service → network".

The 0x800701bc "kernel missing" case is historical baggage: in WSL1 the distro ran as an isolated process and needed no kernel;

after upgrading to WSL2 the kernel update package must be installed separately (or wsl --update on Store builds), otherwise you get this code.

Deterministic takeaway: the same error code = the same root-cause layer, so reading the code and picking the matching fix beats trying 5 commands in sequence;

verify only after restarting the terminal/OS, because feature toggles and hypervisorlaunchtype only take effect after a reboot.

Step by step

1. Read the error code first — Required (the code decides the root-cause layer, don't guess)

Find the hex code in the error text (0x800701bc / 0x80370102 / 0x80040154 / 0x80370114 / 0x800706f7) and pick the matching path above. Can't see it → run wsl --status in an admin PowerShell / reopen the distro to get the full error.

2. 0x800701bc: install the kernel — Required (most frequent, the majority of cases)

Store build: wsl --update (add --web-download if needed). Non-Store build: download and install wsl_update_x64.msi from the official manual install guide. Then reopen the distro.

3. 0x80370102 / 0x80370114: enable virtualization — Depends on diagnosis (BIOS/feature/boot type, three layers)

Run bcdedit /set hypervisorlaunchtype auto (admin), enable "Virtual Machine Platform" (Control Panel feature toggle), and check virtualization (VT-x/AMD-V) isn't off in BIOS.

Still failing → disable "Virtual Machine Platform" → restart → re-enable → restart (officially recommended in Microsoft Q&A).

4. 0x80040154: re-enable the feature — Depends on diagnosis (common after Windows Update)

Check "Windows Subsystem for Linux" + "Virtual Machine Platform" in Control Panel, restart. Still failing → uninstall and reinstall Store WSL, or wsl --update --rollback to roll back a recent WSL update.

5. 0x800706f7: reset Winsock — Depends on diagnosis (proxy/security software suspected)

Admin netsh winsock reset, restart. Still failing → temporarily exit the proxy/security software and retry (to locate the blocker).

How to confirm it works

wsl --version   # prints WSL version + kernel version (no error code)
wsl -d Ubuntu   # distro opens a shell

Both passing = the registration chain works. Important: verify after a restart (feature toggles/boot type only take effect after reboot) — don't misjudge failure before rebooting.

Other environments

EnvironmentNotes
Win10 vs Win11Same error-code family; on Win11 "Windows Hypervisor Platform" is off by default, so 0x80370114 is more common
Store vs built-in WSLStore builds use wsl --update; built-in (legacy) needs the kernel update package msi
WSL1 → WSL2 upgrade0x800701bc hotspot: the kernel update package must be installed after upgrading
Fresh machine0x80370102/0x80370114 hotspot: enable "Virtual Machine Platform" before installing a distro

Symptom

WslRegisterDistribution failed with error: 0x800701bc
Error: 0x800701bc WSL 2 ? ? ?   (garbled Chinese text is common)
Installing, this may take a few minutes... → fails immediately

Signature: fails on the first launch of a distro; black window flashes; the error code is stable and reproducible (same machine, same code).

Cause

Registering a WSL2 distro = LxssManager creates a lightweight VM; four prerequisites: WSL2 kernel, Virtual Machine Platform feature, hypervisorlaunchtype, WSL service/COM. The error codes index the missing layer: 0x800701bc=kernel missing (no kernel update package after WSL1→2, most frequent); 0x80370102=virtualization not active; 0x80370114=Windows Hypervisor Platform missing; 0x80040154=feature disabled/COM broken (common after Windows Update); 0x800706f7=third-party network software blocks RPC.

Solution

  1. Read the error code (table above); 2. 0x800701bc → wsl --update or install the kernel update package msi; 3. 0x80370102/0x80370114 → bcdedit /set hypervisorlaunchtype auto + enable "Virtual Machine Platform" + restart; 4. 0x80040154 → re-enable "Windows Subsystem for Linux" + restart, reinstall WSL if needed; 5. 0x800706f7 → admin netsh winsock reset + restart. All need admin; feature-level fixes must be verified after a reboot.
Verification Evidence
  • Not reproducible on this machine (custom prebuilt WSL runs fine), evidence = official mechanism-check local repro log 2026-08-31
  • Healthy-state criteria verified locally: wsl --version prints 12 lines of version info; C:\Windows\System32\lxss\tools\kernel exists; wsl bash -lc enters the distro.
  • Error-code semantics and fix commands come from Microsoft official troubleshooting / install-manual / Microsoft Q&A official replies (URLs in the mechanism log); fix commands were NOT executed locally (nothing to fix, and some need admin/reboot).

Variant quick reference

Error codeOne-line root causeOne command
0x800701bckernel update package missingwsl --update
0x80370102virtualization not activebcdedit /set hypervisorlaunchtype auto + enable "Virtual Machine Platform" + restart
0x80370114Windows Hypervisor Platform missingdism /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart
0x80040154feature disabled / COM brokenre-enable "Windows Subsystem for Linux" + restart
0x800706f7network software blocks servicenetsh winsock reset + restart

Related canonicals

Read in order: precondition -> same root / same domain / related:

  • Related (similar errors, different cause):
  • This page is the "WSL startup failure" canonical; adjacent WSL problems: wsl-dns-resolution-failure (no network / DNS failure after start), wsl-no-space-left (can't write to disk), wsl-pipe-encoding (garbled output when calling wsl from PowerShell).

Applicable tools (1)

This problem is linked from the tool pages below — reachable from either side.

wsl

Source & evidence

Recorded Verified ✓ VerifiedApplies to 1 tool(s)
Entries contain locally measured or reviewable-source solutions; unmeasured items are explicitly labeled.

Source: https://learn.microsoft.com/windows/wsl/troubleshooting + https://learn.microsoft.com/windows/wsl/install-manual

← Coding Agents & Terminal domain | Problem Catalog Experience | Facing another issue? Go to the Helpdesk