[PATCH 1/2] drm/xe/display: Skip initial plane allocation from stolen memory on RT

From: Junxiao Chang

Date: Mon Nov 02 2026 - 22:34:32 EST


CPU access to stolen memory ranges can introduce latency spikes that
compromise real-time (RT) guarantees on PREEMPT_RT kernels.

On PREEMPT_RT configurations, bypass retrieving the initial plane's
framebuffer from stolen memory. This forces the driver to fall back to
standard allocations, preventing RT latency degradation at the expense
of seamless boot display takeover.

Signed-off-by: Junxiao Chang <junxiao.chang@xxxxxxxxx>
---
drivers/gpu/drm/xe/display/xe_initial_plane.c | 6 ++++++
1 file changed, 6 insertions(+)

diff --git a/drivers/gpu/drm/xe/display/xe_initial_plane.c b/drivers/gpu/drm/xe/display/xe_initial_plane.c
index 0f86b73036d03..fd0e2962412dd 100644
--- a/drivers/gpu/drm/xe/display/xe_initial_plane.c
+++ b/drivers/gpu/drm/xe/display/xe_initial_plane.c
@@ -87,6 +87,12 @@ initial_plane_bo(struct xe_device *xe,
struct ttm_resource_manager *stolen;
u64 pte;

+ if (IS_ENABLED(CONFIG_PREEMPT_RT)) {
+ drm_dbg_kms(&xe->drm,
+ "Skipping FB allocation from stolen mem due to PREEMPT_RT\n");
+ return NULL;
+ }
+
stolen = ttm_manager_type(&xe->ttm, XE_PL_STOLEN);
if (!stolen) {
drm_dbg_kms(&xe->drm, "No stolen for initial FB\n");
--
2.43.0