CVE-2026-53142: drm/xe/display: fix oops in suspend/shutdown without display

Published Jun 25, 2026
·
Updated

In the Linux kernel, the following vulnerability has been resolved:

drm/xe/display: fix oops in suspend/shutdown without display

The xe driver keeps track of whether to probe display, and whether display hardware is there, using xe->info.probedisplay. It gets set to false if there's no display after inteldisplaydeviceprobe(). However, the display may also be disabled via fuses, detected at a later time in inteldisplaydeviceinforuntimeinit().

In this case, the xe driver does foreachintelcrtc() on uninitialized mode config in xedisplayflushcleanupwork(), leading to a NULL pointer dereference, and generally calls display code with display info cleared.

Check for inteldisplaydevicepresent() after inteldisplaydeviceinforuntimeinit(), and reset xe->info.probedisplay as necessary. Also do unsetdisplayfeatures() for completeness, although display runtime init has already done that. This will need to be unified across all cases later.

Move inteldisplaydeviceinforuntimeinit() call slightly earlier, similar to i915, to avoid a bunch of unnecessary setup for no display cases.

Note #1: The xe driver has no business doing low level display plumbing like foreachintelcrtc() to begin with. It all needs to happen in display code.

Note #2: The actual bug is present already in commit 44e694958b95 ("drm/xe/display: Implement display support"), but the oops was likely introduced later at commit ddf6492e0e50 ("drm/xe/display: Make display suspend/resume work on discrete").

(cherry picked from commit 7c3eb9f47533220888a67266448185fd0775d4da)

Affected Software

11 affected components
Linux kernel Linux kernel (drm/xe)
Linux Linux kernel>=6.8<6.12.95
Linux Linux kernel>=6.13<6.18.36
Linux Linux kernel>=6.19<7.0.13
Linux Linux kernel=7.1-rc1
Linux Linux kernel=7.1-rc2
Linux Linux kernel=7.1-rc3
Linux Linux kernel=7.1-rc4
Linux Linux kernel=7.1-rc5
Linux Linux kernel=7.1-rc6
Linux Linux kernel=7.1-rc7

Remediation

Recommended actions to resolve this vulnerability, in priority order.

  1. Upgrade

    Upgrade linux kernel drm/xe (xe driver) to a version that resolves this vulnerability.

    Patch 44e694958b95
  2. Upgrade

    Upgrade linux kernel drm/xe (xe driver) to a version that resolves this vulnerability.

    Patch ddf6492e0e50
  3. Configuration

    In the xe driver, move the intel_display_device_info_runtime_init() call slightly earlier so that display info is initialized before suspend/shutdown display code paths use it. The fix is described as preventing the NULL pointer dereference/oops in suspend/shutdown without display.

    linux kernel drm/xe display runtime init intel_display_device_info_runtime_init() call timing = Move intel_display_device_info_runtime_init() call slightly earlier (before it is needed by suspend/shutdown display plumbing)
  4. Configuration

    Ensure the xe driver does not run for_each_intel_crtc() on uninitialized data during suspend/shutdown without display. The text indicates: do unset_display_features(), check intel_display_device_present() after intel_display_device_probe(), and only proceed with display code when probe_display/actual display presence indicates display hardware is there.

    linux kernel drm/xe suspend/shutdown display handling display probing/uninitialized CRTC iteration = Call/guard for_each_intel_crtc() after display is initialized/present (check intel_display_device_present() after intel_display_device_probe()) and ensure display features are unset

Event History

Jun 25, 2026
CVE Published
via MITRE·08:38 AM
Data Sourced
via MITRE·08:38 AM
Description
Data Sourced
via NVD·09:16 AM
RemedyDescriptionSeverityWeaknessAffected Software
Free Weekly Intel

Don't miss critical vulnerabilities

Join thousands of security professionals who receive our weekly digest of trending CVEs, zero-days, and exploited vulnerabilities.

No spam. Unsubscribe anytime.

Contact

SecAlerts Pty Ltd.
132 Wickham Terrace
Fortitude Valley,
QLD 4006, Australia
info@secalerts.co
By using SecAlerts services, you agree to our services end-user license agreement. This website is safeguarded by reCAPTCHA and governed by the Google Privacy Policy and Terms of Service. All names, logos, and brands of products are owned by their respective owners, and any usage of these names, logos, and brands for identification purposes only does not imply endorsement. If you possess any content that requires removal, please get in touch with us.
© 2026 SecAlerts Pty Ltd.
ABN: 70 645 966 203, ACN: 645 966 203