# Driver rollback on Windows: when it works, when it does not

> Use Device Manager and PnPUtil to roll a display driver back, understand why the button is greyed out, and recover from a black screen.

**Tested on**

- Build: 26300.9457 / 26100.33650
- Edition: Pro (26H2) / Server
- Architecture: x64
- Evidence: E1
- Verified: 2026-10-29

## The short answer

Windows keeps the previous driver package for a device, so **Roll Back Driver** restores it without reinstalling Windows. It is the correct first move when an update breaks something.

It fails in three predictable cases:

1. **No previous package** — clean install, or the old package was cleaned up.
2. **Windows Update already replaced it** — the "previous" is the version you are trying to leave.
3. **The new driver broke the display** — you cannot see the Device Manager to click the button.

Have an answer for all three before you need it.

## Normal rollback

1. `Win + X` → **Device Manager**.
2. Expand **Display adapters** → double-click the GPU.
3. **Driver** tab → **Roll Back Driver**.
4. Reboot.

The button is greyed out when no previous package exists. Check what Windows thinks is installed:

```powershell
Get-PnpDevice -Class Display | Select-Object FriendlyName,Status,InstanceId
Get-PnpDevice -Class Display | Get-PnpDeviceProperty -KeyName 'DEVPKEY_Device_DriverVersion','DEVPKEY_Device_DriverDate'
```

## Rollback from the command line

Useful on servers and when the GUI is slow or broken:

```powershell
# list display driver packages currently in the driver store
pnputil /enum-drivers | Select-String -Context 0,7 'Display'

# remove a specific package (use the published name, e.g. oem42.inf)
pnputil /delete-driver oem42.inf /uninstall /force
```

`/delete-driver` removes the package from the store. It does **not** automatically install an older one — after deleting the broken package, scan for hardware changes or install the older package you kept.

> **Caution: Deleting a driver package is not a rollback**
>
> `pnputil /delete-driver` is destructive: the package is gone from the store. Only do it when you have the replacement installer offline, or when the broken package is preventing boot.

## Black screen after a driver update

Order of operations, cheapest first:

1. **Wait 60 seconds and press `Ctrl + Shift + Win + B`** — this restarts the display driver without rebooting.
2. **Hard reboot**, then boot into **safe mode**: hold `Shift` while clicking Restart, or interrupt boot three times.
3. In safe mode, roll back or uninstall the display driver.
4. If safe mode also fails, boot WinRE → **Startup Settings** → safe mode, or use System Restore.

If the machine has both integrated and discrete graphics, you can also **disable the discrete GPU in safe mode** to get a working desktop, then reinstall its driver normally.

## Why "clean install with DDU" is not the default

Third-party uninstallers exist because vendor uninstallers used to leave registry keys and filter drivers behind. Modern DCH packages uninstall much more cleanly, and aggressive cleaners can remove shared components that other software needs.

Use a third-party cleaner when:

- the normal uninstall leaves the display driver in a broken state;
- you are switching GPU vendors (NVIDIA ↔ AMD) and want a clean slate;
- the display driver is stuck in a crash loop that safe mode cannot break.

Otherwise, vendor uninstall + reboot + reinstall is enough — and leaves fewer unknowns.

## Verify the state afterwards

```powershell
Get-CimInstance Win32_VideoController | Select-Object Name,DriverVersion,DriverDate,Status
Get-PnpDevice -Class Display | Select-Object Status,FriendlyName
Get-WinEvent -FilterHashtable @{LogName='System'; ProviderName='Display'} -MaxEvents 10 |
  Select-Object TimeCreated,Id,LevelDisplayName
```

A `Status : Error` device or repeated `Display` TDR events after the rollback means the older package is also unhappy — that is a hardware/thermal/power investigation, not a driver-version one.

## Related

- [AMD Radeon drivers](https://winbook.fyi/en/hardware/gpu/amd-drivers/)
- [Intel Arc and integrated graphics](https://winbook.fyi/en/hardware/gpu/intel-drivers/)
- [WDDM, HAGS and MPO](https://winbook.fyi/en/hardware/gpu/wddm-hags-mpo/)

## Lab boundary

E1. The commands are Microsoft-documented; the lab's virtual display adapter cannot reproduce a GPU driver rollback, so the procedure was not executed end to end here.

## Sources

- [Microsoft Learn — Using Device Manager](https://learn.microsoft.com/en-us/windows-hardware/drivers/install/using-device-manager)
- [Microsoft Learn — PnPUtil](https://learn.microsoft.com/en-us/windows-hardware/drivers/devtest/pnputil)
- [Microsoft Learn — Get-PnpDevice](https://learn.microsoft.com/en-us/powershell/module/pnpdevice/get-pnpdevice)

---

Source: https://winbook.fyi/en/hardware/gpu/driver-rollback/
