drm/i915: Disable DSB in Xe KMD
authorJosé Roberto de Souza <jose.souza@intel.com>
Thu, 4 Jan 2024 16:24:09 +0000 (08:24 -0800)
committerJosé Roberto de Souza <jose.souza@intel.com>
Fri, 5 Jan 2024 14:33:31 +0000 (06:33 -0800)
Often getting DSB overflows when starting Xorg or Wayland compositors
when running Xe KMD.
Issue was reported but nothing was done, so disabling DSB as whole
until properly fixed in Xe KMD.

v2:
- move check to HAS_DSB(Jani)

v3:
- use IS_ENABLED(I915) check in intel_dsb_prepare()

Link: https://gitlab.freedesktop.org/drm/xe/kernel/-/issues/989
Link: https://gitlab.freedesktop.org/drm/xe/kernel/-/issues/1031
Link: https://gitlab.freedesktop.org/drm/xe/kernel/-/issues/1072
Cc: Animesh Manna <animesh.manna@intel.com>
Cc: Rodrigo Vivi <rodrigo.vivi@intel.com>
Cc: Jani Nikula <jani.nikula@intel.com>
Cc: Francois Dugast <francois.dugast@intel.com>
Reviewed-by: Jani Nikula <jani.nikula@intel.com>
Signed-off-by: José Roberto de Souza <jose.souza@intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20240104162411.56085-1-jose.souza@intel.com
drivers/gpu/drm/i915/display/intel_dsb.c

index 482c28b..a6c7122 100644 (file)
@@ -453,6 +453,10 @@ struct intel_dsb *intel_dsb_prepare(const struct intel_crtc_state *crtc_state,
        if (!HAS_DSB(i915))
                return NULL;
 
+       /* TODO: DSB is broken in Xe KMD, so disabling it until fixed */
+       if (!IS_ENABLED(I915))
+               return NULL;
+
        dsb = kzalloc(sizeof(*dsb), GFP_KERNEL);
        if (!dsb)
                goto out;