Error 0x800f0922 is one of Windows Update’s more cryptic failures. The update downloads fine, starts installing, then dies with a code that tells you almost nothing: a servicing operation failed somewhere deep in the Component-Based Servicing stack. On HP laptops it shows up disproportionately often, usually on cumulative or feature updates, and retrying the same update just produces the same code.

The code is generic, but its causes are not — they cluster around three things: the .NET Framework 3.5 feature state, partition space (EFI or recovery), and corrupt update payloads. HP machines add their own flavor through partition layouts and firmware. This guide works the causes in the order a technician would, starting with the most common. Our step-by-step 0x800f0922 walkthrough covers the same error in condensed checklist form if you prefer that.

Before you start, grab two facts that will steer the whole repair: the exact KB number from Update history, and whether this is the first update ever to fail this way or part of a pattern. A first-time 0x800f0922 on a single KB leans toward a corrupt payload (Fix 5); the same code on every update for months leans toward .NET state or partition space (Fixes 2–3). Knowing which pattern you’re in keeps you from wasting time on the wrong half of the checklist.

Why this happens

  • .NET Framework 3.5 in a broken state: The update tries to service .NET 3.5; if the feature is half-enabled or its payload is missing, servicing fails with 0x800f0922.
  • Full EFI system partition: Servicing writes boot files to the EFI partition; a full 100 MB ESP blocks it.
  • Full recovery partition: Cumulative updates stage WinRE changes; no space means failure.
  • Corrupt downloaded payload: A damaged update package fails hash verification mid-install.
  • HP Sure Start / firmware interference: Firmware-level protection can block the servicing stack’s writes during the update.
  • Third-party antivirus hooks: Filter drivers intercepting servicing operations can abort them.
  • Damaged component store: Corruption in WinSxS makes every servicing operation fail.

How to fix it

Work through these in order — diagnose first, then act.

Fix 1: Check the CBS log for the real failure

The log names the failing component; the error code does not.

  1. Open C:\Windows\Logs\CBS\CBS.log in Notepad (it is large — use Find).
  2. Search for 0x800f0922 and read the lines above it for the failing package or feature name.
  3. If you see references to NetFx3 or Microsoft-Windows-NetFx3, the .NET path (Fix 2) is your answer. Partition errors point to Fix 3.

Fix 2: Repair the .NET Framework 3.5 feature state

The single most common 0x800f0922 trigger.

  1. Open Control Panel > Programs > Turn Windows features on or off.
  2. If .NET Framework 3.5 is checked, uncheck it, restart, then check it again and restart — this clears the half-enabled state.
  3. If the online enable fails, use installation media: mount a Windows 11 ISO and run in elevated Terminal: DISM /Online /Enable-Feature /FeatureName:NetFx3 /All /Source:D:\sources\sxs /LimitAccess (replace D: with your mounted drive).
  4. Retry the update once .NET 3.5 shows as cleanly enabled.

Fix 3: Free space on the EFI and recovery partitions

Servicing needs room to write; HP’s default layouts are often tight.

  1. In elevated Terminal, run mountvol Y: /s to mount the EFI partition, then check its free space.
  2. If the EFI partition is nearly full, remove stale boot entries with bcdedit /enum firmware and delete orphaned entries — or follow Microsoft’s documented ESP cleanup at the Windows update support hub .
  3. Check the recovery partition in Disk Management; if full, the update cannot stage WinRE changes. Free space rather than deleting the partition.
  4. Retry the update after freeing space on both.

Fix 4: Temporarily disable third-party antivirus

Filter drivers aborting servicing operations produce exactly this code.

  1. Uninstall (not just disable) third-party antivirus temporarily — disabled AV often leaves filter drivers loaded.
  2. Ensure Microsoft Defender is active as the interim protection.
  3. Retry the update. Reinstall your AV afterward if the update succeeds.

Fix 5: Reset the update cache and re-download

A corrupt payload fails verification at the same point every time.

  1. In elevated Terminal: net stop wuauserv, net stop bits, net stop cryptsvc.
  2. Rename C:\Windows\SoftwareDistribution to SoftwareDistribution.old and C:\Windows\System32\catroot2 to catroot2.old.
  3. Restart the services and check for updates to force a fresh download.

Fix 6: Repair the component store

If WinSxS is damaged, every servicing operation fails regardless of payload.

  1. In elevated Terminal: DISM /Online /Cleanup-Image /RestoreHealth (allow 15–30 minutes).
  2. Then sfc /scannow, restart, and retry the update.
  3. If DISM reports it cannot repair, use a Windows 11 ISO as the repair source with /Source pointing at the mounted install.wim. Mount the ISO, note its drive letter, and run DISM /Online /Cleanup-Image /RestoreHealth /Source:X:\sources\install.wim — the local source bypasses the same broken download path that may have contributed to the corruption in the first place.

Fix 7: Install the update manually from the Update Catalog

Bypass the servicing-path problem with the standalone installer.

  1. Get the KB number from Settings > Windows Update > Update history.
  2. Download the package from the Microsoft Update Catalog .
  3. Close HP utilities, disconnect peripherals, and run the .msu. If your HP needs firmware updates first, grab them from HP Support before retrying.

Closing

Error 0x800f0922 rewards diagnosis over repetition: read the CBS log once, fix the actual failing prerequisite — usually .NET 3.5 or partition space — and the update that failed ten times installs on the next attempt. On HP laptops, keeping the EFI and recovery partitions healthy and .NET in a clean state prevents this code from ever coming back. And if a failed servicing attempt strands you mid-rollback, our undoing-changes guide for HP laptops covers that recovery.

Frequently asked questions

What does error 0x800f0922 actually mean?
It’s a CBS (Component-Based Servicing) failure code meaning the update couldn’t complete a required servicing operation — most often enabling the .NET Framework 3.5 feature, writing to the EFI or recovery partition, or downloading a payload that failed hash verification. The code alone doesn’t name the cause, so you diagnose by context: which update, when it fails, and what the CBS log says.
Is 0x800f0922 specific to HP laptops?
No — it happens on all brands. But HP laptops see it more because of HP’s partition layouts (small recovery partitions), HP Sure Start firmware interactions during servicing, and HP’s .NET-dependent utilities. The fixes below include the HP-specific angles alongside the universal ones.
Will the .NET Framework 3.5 fix work offline?
Yes, if you have Windows 11 installation media: DISM can install .NET 3.5 from the sources\sxs folder on the ISO with the /Source parameter. This is the reliable path when the online feature-enable fails with the same 0x800f0922 code.
Do I need to reinstall Windows to fix 0x800f0922?
Almost never. The code is caused by servicing prerequisites — .NET state, partition space, corrupt payloads — all fixable without reinstalling. An in-place upgrade is only the fallback if DISM and SFC both report unrepairable corruption, which is genuinely rare on an otherwise healthy system.