If your Windows 10 or Windows 11 upgrade keeps failing with 0xC1900101, you’re dealing with one of the most stubborn, driver-related rollback errors in the Windows setup pipeline. It often appears during feature updates in Windows Update or the Setup program with messages like “We couldn’t install Windows” followed by “0xC1900101 – 0x2XXXX,” and the installer rolls back to your previous version. In some cases you’ll also see Blue Screens during FIRST_BOOT or SECOND_BOOT phases.
This guide goes well beyond generic advice. You’ll learn exactly what 0xC1900101 means, how to analyze logs and dumps, and a driver rollback strategy that works in practice—step by step—from quick checks to advanced diagnostics, until the upgrade succeeds and stays stable.
Understanding the Error
What 0xC1900101 technically means (in plain language)
0xC1900101 is a generic “rollback due to driver” error from the Windows Setup engine. During an in-place upgrade, Windows migrates, initializes, and starts drivers multiple times (SAFE_OS, FIRST_BOOT, SECOND_BOOT, OOBE_BOOT phases). If a kernel-mode driver crashes, deadlocks, times out, or blocks setup servicing, Windows Setup aborts and rolls the machine back to the previous build. Hence the “rollback” behavior you see.
You’ll typically see variants like:
- 0xC1900101 – 0x20017 (SAFE_OS phase): Early boot driver problem during the SafeOS phase—often storage, BIOS/UEFI settings, or boot-critical drivers.
- 0xC1900101 – 0x30018 (FIRST_BOOT phase): Driver crash or service failure when Windows first boots into the new OS for the first time—frequently GPU, network, USB, filter drivers, or antivirus drivers.
- 0xC1900101 – 0x4000D (SECOND_BOOT phase): Failure during driver migration/configuration—often third‑party filters (encryption, antivirus, VPN, tuning software) or unusual hardware.
- 0xC1900101 – 0x3000D / 0x3000E / 0x20004: Variations that still point to drivers or setup compatibility issues.
Where you’ll see it
- Windows Update feature update install
- Media Creation Tool or ISO-based in-place upgrade
- Setup message: “Installation failed in the SAFE_OS/FIRST_BOOT/SECOND_BOOT phase with an error during BOOT operation” along with 0xC1900101
- Occasional BSODs during the upgrade attempt, then rollback
Why it’s critical to fix
- You can’t receive major feature updates (security and compatibility risk)
- Repeated rollbacks can corrupt user profiles, drivers, or services
- The same driver issues can cause random BSODs during normal use
Quick Reference Table
| Cause | Symptom | Recommended Fix |
|——————————————|—————————————————————-|———————————————————————————-|
| Outdated or incompatible GPU/NVMe/IRST | 0xC1900101 – 0x30018 or 0x4000D during upgrade | Update or roll back GPU/storage drivers; try Microsoft Basic Display Adapter |
| Third‑party AV/VPN/disk filter drivers | Rollback at FIRST_BOOT/SECOND_BOOT; occasional BSOD | Uninstall AV/VPN and storage filter tools completely before upgrading |
| USB/Bluetooth/peripheral driver issues | Rollback while devices are attached | Disconnect all non-essential peripherals; remove their drivers, upgrade later |
| BIOS/UEFI or firmware mismatch | 0xC1900101 – 0x20017 in SAFE_OS phase | Update BIOS/UEFI and SSD/NVMe firmware; reset BIOS to defaults; disable overclock|
| Storage mode/config changes (AHCI/RAID) | Early rollback; boot issues | Keep consistent SATA mode; update Intel RST/AMD RAID drivers; avoid switching |
| Corrupted system files or servicing stack| Update fails after long wait; generic failure codes | Run SFC/DISM; install latest SSU/LCU; perform repair install |
| Memory instability/overclock | Random BSODs, WHEA errors; upgrades fail at different points | Remove overclocks; run MemTest; replace faulty RAM |
| Malware or rootkits | Unexplained failures; suspicious services/drivers in logs | Offline scan; remove suspicious drivers; clean boot |
| Insufficient free space | Setup aborts or loops | Free 25–30 GB on system drive; remove temp/update cache |
| Old driver remnants (ghost devices) | Device Manager shows hidden devices; upgrade rollbacks | Remove ghost devices and old drivers with Device Manager and pnputil |
Common Causes
- Outdated GPU or storage drivers
- NVIDIA/AMD/Intel graphics drivers, Intel RST (Rapid Storage Technology), AMD RAID/NVMe, Samsung NVMe.
- Third-party antivirus/VPN/tuning/backup filter drivers
- Examples: Avast/AVG, Bitdefender, Kaspersky, ESET, Cisco AnyConnect, older TAP drivers, Razer services, RGB control software, Acronis, Macrium image guardian filters, older Intel/AMD chipset utilities.
- USB/Bluetooth peripherals and their drivers
- Hubs, RGB controllers, DACs, TV tuners, older printers/scanners, UPS monitoring, dongles.
- BIOS/UEFI misconfigurations or outdated firmware
- Overclock, CSM/Legacy modes, outdated microcode, buggy NVMe firmware.
- Storage configuration changes
- Switching AHCI/RAID without proper preparation; multiple storage controllers enabled.
- Corrupted system files or servicing stack
- Damaged component store; failed previous updates.
- Memory instability
- XMP too aggressive; marginal DIMMs.
- Malware/PUAs/rootkits
- Kernel drivers hooking storage/network stacks.
- Low disk space or file system problems
- Not enough room for the new OS image; disk errors.
- Old, orphaned drivers
- Ghost devices referencing discontinued hardware.
Preliminary Checks
Boot into Safe Mode (if unstable)
- Windows 10/11 from Settings:
- Settings > System > Recovery > Advanced startup > Restart now.
- Troubleshoot > Advanced options > Startup Settings > Restart.
- Press 4 (Enable Safe Mode) or 5 (Safe Mode with Networking).
- If Windows won’t boot normally:
- Power cycle during boot 3 times to trigger Recovery Environment, then follow steps above.
Back up important data
- Copy critical files to an external drive or cloud (OneDrive).
- Create a full system image using your preferred tool (e.g., Windows Backup, Macrium).
- Create a restore point: System Properties > System Protection > Create.
Run basic health checks
Open an elevated Command Prompt (Run as administrator) and run:
-
File system check (online scan):
chkdsk /scan -
System file check:
sfc /scannow -
Servicing stack health:
DISM /Online /Cleanup-Image /CheckHealth
DISM /Online /Cleanup-Image /ScanHealth
DISM /Online /Cleanup-Image /RestoreHealth
If SFC repairs files, run it again until it reports no integrity violations. Reboot afterward.
Step-by-Step Troubleshooting
Follow these in order. The idea is to remove or neutralize problematic drivers and software, then reintroduce only what’s known-good.
- Get your system ready for upgrade
- Free space: Ensure at least 25–30 GB free on C:.
- Disconnect non-essential hardware: Printers, scanners, USB hubs, DACs, capture cards, RGB controllers, external drives (except the install media), and even extra internal drives if practical.
- Fully update Windows: Settings > Windows Update, install all cumulative updates and reboot.
- Uninstall third‑party AV/VPN and disk filter software:
- Use vendor uninstallers where possible.
- Reboot after removing.
- Disable overclocks (CPU/GPU/RAM): Load BIOS defaults; turn off XMP/EXPO temporarily.
- Temporarily disable Device Encryption/BitLocker:
- Suspend BitLocker: Control Panel > BitLocker Drive Encryption > Suspend protection.
- Update BIOS/UEFI and firmware
- Update to the latest stable BIOS/UEFI from your OEM.
- Update SSD/NVMe firmware (Samsung Magician, Crucial, WD Dashboard, etc.).
- If you use Intel RST/RAID, install a current driver supported by your OEM for Windows 10/11.
- Bring critical drivers up to date (or roll back if necessary)
- Chipset: Install latest AMD/Intel chipset drivers from the motherboard/laptop OEM.
- Storage: Update Intel RST or AMD RAID carefully; on non-RAID systems prefer Microsoft Standard SATA AHCI or NVMe controller.
- GPU:
- NVIDIA: Use the latest Studio or Game Ready driver; or use the Microsoft Basic Display Adapter during the upgrade (uninstall NVIDIA/AMD driver and reboot).
- AMD/Intel: Same principle; consider using the basic adapter through the upgrade, then install OEM drivers afterward.
- Clean boot to strip non-Microsoft drivers/services
- Press Win+R, type msconfig, Enter.
- On the Services tab: Check “Hide all Microsoft services,” then click “Disable all.”
- On the Startup tab: Open Task Manager, disable all startup items.
- Reboot.
- Try the upgrade again.
- Use SetupDiag to pinpoint the culprit
Microsoft’s SetupDiag analyzes setup logs automatically.
- Download and run SetupDiag from Microsoft:
SetupDiag.exe - Review its report (SetupDiagResults.log). It will reference files like:
- C:\$WINDOWS.~BT\Sources\Panther\setuperr.log
- C:\$WINDOWS.~BT\Sources\Rollback\setupact.log
- C:\$Windows\Panther\setuperr.log
- Look for driver names (e.g., aswVmm.sys, nvlddmkm.sys, iaStorAC.sys, tap0901.sys) and phases (SAFE_OS, FIRST_BOOT, etc.).
- Remove/disable/update the referenced driver and retry.
- Remove ghost devices and old drivers
- Device Manager: View > Show hidden devices.
- Expand display adapters, network adapters, storage controllers, system devices, sound/video/game controllers, and remove greyed-out devices you no longer use (right-click > Uninstall device).
- Use pnputil to list and remove old OEM drivers:
pnputil /enum-drivers
Review output for third-party drivers you no longer need (oemXX.inf entries). Remove cautiously:
pnputil /delete-driver oemXX.inf /uninstall /force
Caution: Do not remove storage controller drivers you currently use. Create a restore point first.
- Target typical offenders (Driver Rollback Strategy)
If SetupDiag or experience points to the usual suspects, do the following before retrying the upgrade:
- GPU: Uninstall NVIDIA/AMD/Intel graphics driver and reboot to the Microsoft Basic Display Adapter. Upgrade, then reinstall the latest OEM driver after success.
- Network/VPN: Uninstall VPN clients (Cisco AnyConnect, OpenVPN, TAP drivers), killer/rivet tuning suites, and virtual switches (Hyper‑V, VirtualBox Host-Only) temporarily.
- Security software: Fully uninstall third‑party antivirus/antimalware. Use vendor removal tools (e.g., AvastClear, ESET Uninstaller).
- Storage filters: Uninstall Acronis drivers, old backup/imaging tools that install filter drivers, and motherboard vendor “tuning” utilities.
- USB: Disconnect hubs and RGB/lighting controllers; uninstall their drivers.
- Audio: Temporarily use Microsoft High Definition Audio instead of vendor suites if logs point to audio drivers.
- Check and reset BIOS/UEFI settings that affect boot
- Ensure SATA mode stays consistent (AHCI vs RAID). Do not change this during an upgrade unless you also switch the driver appropriately.
- Disable legacy CSM if your system runs UEFI natively; or, if extremely old hardware, try the inverse.
- Disable fast boot and any overclock profiles.
- Secure Boot: Generally keep enabled for Windows 11; if your OEM recommends temporarily disabling for troubleshooting, do so only for testing and re-enable after upgrade.
- Try an offline, ISO-based in-place upgrade
- Download the ISO using the Media Creation Tool or from Microsoft’s site. Match language/edition/architecture.
- Right-click ISO > Mount > Run setup.exe.
- When prompted to get updates, choose “Not right now” to avoid dynamic drivers that can reintroduce conflicts.
- Keep personal files and apps.
- Proceed and monitor.
- Analyze minidumps if you hit a BSOD during upgrade
Enable and locate minidumps:
- System Properties (sysdm.cpl) > Advanced > Startup and Recovery > Settings:
- Write debugging information: Small memory dump (256 KB)
- Dump file: %SystemRoot%\Minidump
- After a crash, dumps are in C:\Windows\Minidump.
Option A: Use BlueScreenView (quick and simple)
- It highlights the likely faulting driver (.sys). Remove or update that driver.
Option B: Use WinDbg (deeper analysis)
- Install WinDbg (Preview) from Microsoft Store.
- Open dump: File > Open dump file > select .dmp.
- Run:
!analyze -v - Identify faulting module (IMAGE_NAME) and its stack. Then:
lmvm drivername
If the stack implicates a third‑party driver (e.g., nvlddmkm.sys for NVIDIA, iaStorA.sys for Intel RST, aswVmm.sys for Avast), remove/replace it, then retry the upgrade.
- Review Event Viewer for setup and driver errors
- Event Viewer > Windows Logs > System:
- Filter for “BugCheck,” “Disk,” “Ntfs,” “volmgr,” “WHEA-Logger,” “Service Control Manager” failures around the time of the upgrade.
- Event Viewer > Applications and Services Logs > Microsoft > Windows > WindowsUpdateClient > Operational and Setup logs for SetupPlatform errors.
- Memory and storage diagnostics
- Memory:
- Windows Memory Diagnostic: mdsched.exe, reboot, run Extended test.
- For deeper analysis, use MemTest86 (multiple passes). Replace faulty RAM.
- Storage:
- Check SMART with vendor tools. If errors or reallocation counts climb, replace the drive.
- In-place repair of current Windows before upgrade
If corruption persists:
- Mount a same-version ISO (e.g., Windows 10 to repair Windows 10) and run setup.exe keeping files and apps. This repairs component store and servicing stack.
- Then attempt the feature upgrade again.
- Last resort: Clean install
- Back up data and license keys.
- Create USB media with Media Creation Tool.
- Clean install Windows, then reinstall applications and restore data.
- This almost always bypasses 0xC1900101, but it’s the most time-consuming option.
Advanced Diagnostics
Driver Verifier (use with caution)
Driver Verifier stresses kernel drivers to provoke failures and reveal the culprit. Only use it if you can recover to Safe Mode.
-
Create a restore point first.
-
Enable:
verifier /standard /all -
Reboot and use the system; if it BSODs, analyze the minidump to identify the driver.
-
Disable when finished (from Safe Mode if needed):
verifier /reset
Notes:
-
Target specific non-Microsoft drivers if you already have suspects:
verifier /standard /driver driver1.sys driver2.sys -
If you get a boot loop, boot into Safe Mode and run verifier /reset, or use System Restore.
Event Viewer deep dive
- Check SetupPlatform and Panther logs for driver migration errors:
- C:\$WINDOWS.~BT\Sources\Panther\setuperr.log
- C:\$WINDOWS.~BT\Sources\Panther\setupact.log
- C:\$WINDOWS.~BT\Sources\Rollback\setupact.log
- Search for “Error,” “C1900101,” “MOUPG,” “SP” entries, and driver (.sys) names. Remove or update those drivers and retry.
Post-Fix Checklist
- Stability checks:
- Event Viewer System log shows no new critical/bugcheck events for a few days.
- Reliability Monitor (perfmon /rel) trend is steady with no repeated hardware or driver errors.
- Re-enable security:
- Reinstall antivirus (prefer Windows Security or a lightweight, Windows-11-certified AV).
- Re-enable BitLocker/device encryption.
- Reapply performance profiles cautiously:
- Add XMP/EXPO and overclocks back only after extended stability testing.
- Update drivers after upgrade:
- Install OEM GPU/chipset/storage drivers one at a time; reboot between each to isolate issues.
- Create a fresh system image:
- Capture a known-good baseline for easy recovery.
When to Seek Professional Help
- Repeated BSODs implicating hardware: WHEA-Logger 124/18, Machine Check Exceptions, or consistent memory errors after multiple RAM tests.
- SMART failing or bad sectors accumulating on system drive.
- The system only upgrades successfully with minimal hardware (e.g., single DIMM, one SSD), but fails when you reconnect normal components—indicating a marginal PSU, motherboard slot, or peripheral.
- Enterprise or complex RAID storage environments where driver/firmware coordination is critical.
Prevention Tips
- Driver hygiene:
- Favor OEM drivers from your laptop/motherboard vendor for chipset, storage, and GPU.
- Avoid “driver updater” utilities. Update only what you need.
- Keep firmware current:
- BIOS/UEFI and NVMe firmware updates improve stability.
- Avoid stacking filter drivers:
- Minimize overlapping AV, VPN, backup, and tuning software that install kernel filters.
- Stage upgrades:
- Create a restore point and image backup before feature updates.
- Disconnect non-essential peripherals before major upgrades.
- Monitor health:
- Periodically run SFC, DISM, vendor SSD tools, and check Reliability Monitor.
- Use stable power and cooling:
- Overheating and power instability can trigger upgrade-time BSODs.
Conclusion
0xC1900101 is the Windows Setup way of saying “a driver broke the upgrade, so I rolled back.” The fastest path to success is a disciplined driver rollback strategy: remove nonessential peripherals and third‑party filters, update or temporarily replace GPU/storage drivers, clean boot, analyze setup logs with SetupDiag, and only then try the upgrade again—preferably with an offline ISO. If you still crash, advanced tools like WinDbg, Driver Verifier, and thorough memory/storage tests will surface the real culprit. With patience and the steps above, most systems can be upgraded cleanly and remain stable.
FAQ Section
What does 0xC1900101 actually mean, and is it a BSOD?
0xC1900101 is primarily a Windows Setup rollback code indicating a driver problem during an upgrade. It’s not itself a BSOD stop code, but the underlying issue is often a driver that can also cause BSODs. During the upgrade, if a kernel driver fails, Setup aborts and rolls back, showing 0xC1900101.
Which drivers most commonly cause 0xC1900101 during Windows 10/11 upgrades?
Most commonly: graphics drivers (NVIDIA/AMD/Intel), storage/RAID/NVMe (Intel RST, AMD RAID, Samsung NVMe), antivirus/VPN filter drivers, USB hubs/peripheral suites (RGB, capture cards), and older network stack components (TAP drivers). BIOS/firmware mismatches and overclocks are frequent accomplices.
Can I upgrade with drivers disabled?
Yes. A reliable tactic is to uninstall third‑party GPU drivers and let Windows use the Microsoft Basic Display Adapter, remove VPN/AV/filter drivers, and perform a clean boot. After a successful upgrade, reinstall the latest OEM drivers one by one.
How do I read setup logs to find the problem driver?
Run SetupDiag. It automatically parses Panther and Rollback logs (setuperr.log, setupact.log) and reports likely causes and driver names. You can also open the logs in Notepad and search for “Error,” “C1900101,” and .sys file names.
Is a clean install the only fix if 0xC1900101 keeps recurring?
Not usually. Most cases are fixed by the driver rollback strategy: uninstall third‑party filters, update/replace GPU and storage drivers, clean boot, update BIOS/firmware, and use an offline ISO. Clean install is a last resort when corruption or hardware faults are severe.
Appendix: Handy Commands and Paths
-
SFC/DISM:
sfc /scannow
DISM /Online /Cleanup-Image /ScanHealth
DISM /Online /Cleanup-Image /RestoreHealth -
List/remove old drivers:
pnputil /enum-drivers
pnputil /delete-driver oemXX.inf /uninstall /force -
Enable Driver Verifier:
verifier /standard /all
verifier /reset -
Logs and dumps:
C:\$WINDOWS.~BT\Sources\Panther\setuperr.log
C:\$WINDOWS.~BT\Sources\Rollback\setupact.log
C:\Windows\Panther\setuperr.log
C:\Windows\Minidump
You’ve got this. With a methodical approach—reduce variables, analyze evidence, fix the specific driver, and try again—you can beat the 0xC1900101 upgrade error and move forward on a stable, up-to-date Windows.
