Error 0xC1900101 indicates that the 25H2 upgrade is being blocked by an incompatible driver, so update or remove the affected driver rather than clearing the Windows Update download cache again.^1^
1. Update drivers and firmware
- Open Settings → Windows Update → Advanced options → Optional updates.
- Install every available driver update, then restart.
- Visit the support page for your exact PC or motherboard model and install the latest available:
- BIOS/UEFI firmware
- Chipset driver
- Storage/NVMe/Intel RST driver
- Graphics driver
- Network and Bluetooth drivers
- Open Device Manager:
- Right-click Start → Device Manager.
- Look for devices with a yellow warning icon.
- Right-click an affected device and select Update driver.
- If no compatible update exists and the device is nonessential, select Uninstall device, restart, and retry the upgrade.
Do not install BIOS or drivers from unrelated models. Keep the PC connected to power during a BIOS update.
Also disconnect nonessential USB devices, external drives, printers, docks, and adapters before retrying. Leave only the keyboard, mouse, display, and Internet connection.
2. Identify the exact blocking driver with SetupDiag
Rather than repeatedly trying different drivers, inspect the SetupDiag result generated by the failed upgrade. Windows Setup automatically runs SetupDiag after an unsuccessful upgrade and normally saves its analysis at:
C:\Windows\Logs\SetupDiag\SetupDiagResults.xml
Open that file in Notepad and search for:
-
HardblockDeviceOrDriver -
Driver -
.sys -
Failure -
Compat
A HardblockDeviceOrDriver result means a driver loaded by the current Windows installation is incompatible and must be removed before upgrading.^2^
If the XML file is missing or inconclusive, download the latest SetupDiag from the Microsoft page, place it in C:\SetupDiag, open Terminal (Admin), and run:
cd /d C:\SetupDiag
SetupDiag.exe /Output:C:\SetupDiag\Results.log
notepad C:\SetupDiag\Results.log
SetupDiag examines the Windows Setup logs and reports a matched failure rule where possible. If it reports multiple failures, the last failure is typically the fatal one.^2^
For a generic 0xC1900101 rollback, the most relevant raw files are under:
C:\$Windows.~BT\Sources\Rollback
In particular, check setupact.log, setuperr.log, and setupapi.dev.log; Microsoft identifies the rollback logs as the relevant location for generic 0xC1900101 failures.^3^
3. Retry from a clean boot
If SetupDiag does not identify one driver, eliminate third-party services that may be loading filter drivers during Setup:
- Press Windows+R, enter
msconfig, and press Enter. - Open Services.
- Select Hide all Microsoft services first.
- Select Disable all, then Apply.
- Open Startup → Open Task Manager.
- Disable each enabled startup item.
- Restart and retry the 25H2 installation.
Hiding Microsoft services before selecting Disable all is critical. A clean boot temporarily removes non-Microsoft startup conflicts without using Safe Mode.^4^
After testing, reopen msconfig and return the computer to normal startup.
4. If Windows Update still rolls back
Back up important files, create current Windows installation media, and perform an in-place upgrade from within the existing Windows desktop:
- Connect or mount the Windows installation media.
- Open the media in File Explorer.
- Run
setup.exe. - Select Change what to keep.
- Choose Keep personal files and apps.
- Complete the installation.
Do not boot from the media for this procedure; booting from it can lead to a clean installation. An in-place upgrade started inside Windows can preserve personal files, applications, and settings.^5^
If the in-place upgrade also fails with 0xC1900101, the next useful information is the contents of SetupDiagResults.log, especially the matched rule, driver filename, and extended code such as 0xC1900101-0x40017.
References