XE DEVICE WEDGING(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’… Xe Device Wedging β€” the kernel API manual (section 9, bestie)

okay so this is the Xe Device Wedging page from the kernel API manual, and it's honestly kind of iconic because it's all about what happens when your GPU just... gives up. 🫠

✨ DESCRIPTION ✨

The Xe driver uses the drm device wedged uevent, exactly as documented over in Documentation/gpu/drm-uapi.rst. Like, that's the reference, no cap. πŸ“–

So when the device is in the wedged state, every single IOCTL gets blocked and the GT cannot be used. Periodt. The conditions under which the driver actually declares the device wedged depend on the wedged mode configuration (peep enum xe_wedged_mode). And the default recovery method for a wedged state is rebind/bus-reset. πŸ”„

There's also another recovery method that's vendor-specific. Below are the cases that send WEDGED=vendor-specific as the recovery method in the drm device wedged uevent. πŸ‘€


🧚 Case: Firmware Flash

Identification Hint

A WEDGED=vendor-specific drm device wedged uevent, together with :ref:Runtime Survivability mode <xe-survivability-mode>, is used to notify the admin / userspace consumer about the need for a firmware flash. πŸ“£

Recovery Procedure

Once the WEDGED=vendor-specific drm device wedged uevent is received, follow the below steps:

  • Check the Runtime Survivability mode sysfs. If it's enabled, firmware flash is required to recover the device. πŸ”
/sys/bus/pci/devices/<device>/survivability_mode
  • The admin / userspace consumer can use firmware flashing tools like fwupd to flash firmware and restore the device to normal operation. πŸ› οΈβœ¨

🌈 SEE ALSO 🌈

Kernel file ./drivers/gpu/drm/xe/xe_device.c plus all of these besties:


and that's the whole page, bestie πŸ’œ β€” brought to you by the fine folks at ./drivers/gpu/drm/xe, stamped October 2026, living forever as Xe Device Wedging(9). mwah πŸŽ€

πŸ“¦ where this page comes from