Fix Windows Update Error 0x800f0922: Step-by-Step Guide

Windows Update error 0x800f0922 means the update couldn't finish writing to a system partition or the component store. On Windows 11 24H2/25H2 it's usually a near-full EFI System Partition; elsewhere it's corrupted system files or .NET. Run DISM and SFC, free up the EFI partition, then retry. Details below.

What causes Windows Update error 0x800f0922?

0x800f0922 is a servicing error, not a hardware death sentence. It shows up when Windows can't commit an update — either it can't write boot files to a partition that's out of room, or it can't verify the files it's installing because the component store is damaged. A few distinct causes hide behind the same code:

  • A full EFI System Partition (ESP). This is the big one on Windows 11 right now — see the next section.
  • A corrupted component store, the thing DISM and SFC repair.
  • .NET Framework trouble, usually on .NET rollups or when something needs .NET 3.5.
  • Network blocks — a VPN, proxy, or WSUS pointing somewhere the client can't reach.
  • Overzealous third-party antivirus grabbing update files mid-install.
  • Edge cases: a corrupted SecureBootEncodeUEFI scheduled task, or C:\Windows\Temp stuffed with 65,000+ files.

Don't shotgun all six fixes. Find out which one you've got first. It takes two minutes and saves you an hour.

How do I tell which 0x800f0922 I've got?

Open C:\Windows\Logs\CBS\CBS.log in Notepad (copy it to your desktop first if it's locked) and search for the failure near the bottom. The log tells you which flavor you're dealing with.

  • If you see ServicingBootFiles failed. Error = 0x70 and a SpaceCheck line about space used by third-party/OEM files outside Microsoft's boot directories, your EFI partition is full. Jump to the EFI section.
  • If you see corrupt or missing package and assembly errors, it's the component store — DISM and SFC.
  • If the failing package name contains NetFx or ".NET", go to the .NET section.

Event Viewer works too (Windows Logs > Setup, look for WindowsUpdateClient and CBS entries), but CBS.log is where the real reason lives.

Quick reference: symptom, cause, fix

Symptom / log clueLikely causeFix
Fails ~35% on reboot, "Undoing changes," Win 11 24H2/25H2Full EFI System PartitionJune 2026 update, or the EspPaddingPercent workaround
ServicingBootFiles failed. Error = 0x70 in CBS.logESP out of roomSame as above
Corrupt or missing package / assembly errorsDamaged component storeDISM RestoreHealth, then SFC
Failing update is a .NET rollup or NetFx3.NET FrameworkRepair or reinstall .NET via DISM
Installs fine off the corporate networkVPN / proxy / WSUSDisconnect VPN, fix the WSUS source
Only fails with antivirus runningThird-party AVClean boot, then retry

How do I fix 0x800f0922 on Windows 11 24H2/25H2 (the May 2026 EFI partition bug)?

This is the one most people are hitting in 2026. KB5089549, the May 12, 2026 security update for Windows 11 24H2 and 25H2, fails on machines whose EFI System Partition has roughly 10 MB or less free. The install runs fine, then dies during the reboot at about 35–36% and rolls back with "Something didn't go as planned. Undoing changes." Your C: drive having 400 GB free is irrelevant — the ESP is a separate ~100 MB partition you never see in File Explorer.

Three ways out, easiest first:

  1. Install the June 2026 cumulative update. The permanent fix shipped in KB5094126 (build 26200.8655 on 25H2) on June 9. Open Settings > Windows Update, click Check for updates, install it, and reboot. If you're stuck on May's failed update, this is the clean fix.
  2. Just restart and retry. Microsoft pushed a Known Issue Rollback to consumer and unmanaged PCs. A reboot helps it land. Managed/enterprise devices need the matching Group Policy from IT.
  3. Use Microsoft's registry workaround. This relaxes the ESP free-space padding check so the update fits. Back up the registry first (advanced users and support desks only):
    reg add "HKLM\SYSTEM\CurrentControlSet\Control\Bfsvc" /v EspPaddingPercent /t REG_DWORD /d 0 /f
    Then reboot and retry the update.

Don't start deleting files out of the EFI partition to make room. The OEM files in there can be tied to firmware updates, and removing the wrong one can stop the machine booting. I've watched people "clean up" the ESP by hand and land at a recovery prompt. The registry workaround and the June update both sidestep the partition entirely — use those.

How do I repair the component store with DISM and SFC?

If CBS.log points at corrupt packages instead of disk space, repair the store. Order matters: DISM fixes the component store, and SFC pulls its replacement files from that store — so run DISM first.

Open Command Prompt or Terminal as administrator and run:

DISM /Online /Cleanup-Image /RestoreHealth

Give it 10–20 minutes and an internet connection — it downloads clean files from Windows Update. It'll look stuck at 20% or 62%; leave it alone. When it finishes, run:

sfc /scannow

Another 10–15 minutes, then reboot and retry the update. If DISM itself can't pull clean files (no internet, or a broken Windows Update client), point it at a mounted Windows ISO instead:

DISM /Online /Cleanup-Image /RestoreHealth /Source:WIM:D:\sources\install.wim:1 /LimitAccess

Swap D: for your mounted ISO's drive letter; install.wim:1 is the first image in it.

How do I reset Windows Update components when the queue is stuck?

Sometimes the update cache itself is corrupt and every retry fails the same way. Run the built-in troubleshooter first (Settings > System > Troubleshoot > Other troubleshooters > Windows Update) — it's the lazy fix and it sometimes works. If not, reset the components by hand from an admin prompt:

net stop wuauserv
net stop cryptSvc
net stop bits
net stop msiserver
ren C:\Windows\SoftwareDistribution SoftwareDistribution.old
ren C:\Windows\System32\catroot2 catroot2.old
net start wuauserv
net start cryptSvc
net start bits
net start msiserver

That renames the SoftwareDistribution and catroot2 folders so Windows rebuilds them clean. Reboot, then check for updates again.

How do I fix the .NET Framework version of 0x800f0922?

If the failing update is a .NET rollup, or the error appears when you try to turn on .NET Framework 3.5, the fix is different. Windows 11 ships .NET 4.8 but keeps 3.5 as an optional feature, and the online installer is flaky. Install it offline from a Windows ISO instead. Mount the ISO (right-click > Mount), note the drive letter, then from an admin prompt run the command from Microsoft's DISM guidance:

DISM /Online /Enable-Feature /FeatureName:NetFx3 /All /LimitAccess /Source:D:\sources\sxs

Replace D: with your mounted ISO's letter. /LimitAccess stops DISM phoning Windows Update and forces it to use the local files — which is the whole point when Windows Update is what's broken. PowerShell does the same thing:

Add-WindowsCapability -Online -Name NetFx3~~~~ -Source D:\sources\sxs

On a domain machine pointed at WSUS, this can still fail because Group Policy blocks the alternate source. If it does, enable Specify settings for optional component installation and component repair in Group Policy, set the alternate source path to your ISO's \sources\sxs, run gpupdate /force, and try again.

Still failing? The less-obvious culprits

Worked through the above and still stuck? Run down the uncommon causes:

  • VPN or proxy: disconnect the VPN and retry. 0x800f0922 has meant "can't reach the update servers" since the Windows 8 days, and a corporate tunnel is a classic trigger.
  • Antivirus: do a clean boot (msconfig > Services > Hide all Microsoft services > Disable the rest, plus disabling startup items in Task Manager), then retry. Third-party AV sometimes locks update files.
  • C:\Windows\Temp bloat: if CBS.log shows the failure while servicing roles/features and Temp holds 65,000+ files, empty it and retry.
  • Stale recovery agent: delete the hidden C:\$WinREAgent folder (some updates choke on it), reboot, retry.
  • Old firmware: a UEFI/BIOS update from your OEM has cleared Secure Boot-related 0x800f0922 failures for me before. Worth checking if your BIOS is a few years old.

If none of that lands, grab C:\Windows\Logs\CBS\CBS.log and C:\Windows\Logs\DISM\dism.log and open a support case. That's the point where guessing stops being useful.

FAQ

Does error 0x800f0922 mean my PC is broken?

No. The update didn't install, but Windows rolls itself back and keeps running normally. You're just missing that patch until you fix the cause — which matters when it's a security update, so don't leave it sitting.

Is it safe to set EspPaddingPercent to 0?

It's a Microsoft-published workaround, so it's legitimate — but it's a registry edit that changes boot servicing behavior, not a routine tweak. Back up the registry or set a restore point first, type the command exactly, and skip it entirely if the June 2026 update is available to you.

How do I check free space on the EFI partition?

The honest answer: don't bother eyeballing it. The ESP has no drive letter, and Disk Management won't show its free space cleanly. The reliable signal is CBS.log — the ServicingBootFiles failed. Error = 0x70 line tells you the ESP is the problem. If you must inspect it, diskpart or mountvol can mount it, but that's advanced and easy to get wrong.

What's the difference between 0x800f0922 and 0x80070643?

They overlap. 0x80070643 was the well-known error from KB5034441 in early 2024, caused by a too-small Windows Recovery (WinRE) partition. 0x800f0922 is broader and, in 2026, usually points at the EFI System Partition. Different partition, same "the update can't fit" root cause.

Will the June 2026 update fix this automatically?

For the EFI partition bug, yes — the fix is baked into KB5094126 and later cumulative updates. Install it and the May update that kept failing should go through.

The one thing to take away: 0x800f0922 is almost always "no room to write boot files" or "corrupt files to verify." Read CBS.log, match it to the right fix, and skip the shotgun approach. On a current Windows 11 box, installing the June 2026 update clears the most common version of this outright.