Experiments were conducted with different multipliers to VTD_GUARD macro with multiplier of 185 we were observing occasional pipe faults when running kms_cursor_legacy --run-subtest single-bo There could possibly be an underlying issue that is being investigated, for now bump the guard pages for MTL. Closes: https://gitlab.freedesktop.org/drm/intel/-/issues/2017 Cc: Gustavo Sousa <gustavo.sousa@xxxxxxxxx> Cc: Chris Wilson <chris.p.wilson@xxxxxxxxxxxxxxx> Signed-off-by: Radhakrishna Sripada <radhakrishna.sripada@xxxxxxxxx> --- drivers/gpu/drm/i915/gem/i915_gem_domain.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/drivers/gpu/drm/i915/gem/i915_gem_domain.c b/drivers/gpu/drm/i915/gem/i915_gem_domain.c index 3770828f2eaf..b65f84c6bb3f 100644 --- a/drivers/gpu/drm/i915/gem/i915_gem_domain.c +++ b/drivers/gpu/drm/i915/gem/i915_gem_domain.c @@ -456,6 +456,9 @@ i915_gem_object_pin_to_display_plane(struct drm_i915_gem_object *obj, if (intel_scanout_needs_vtd_wa(i915)) { unsigned int guard = VTD_GUARD; + if (IS_METEORLAKE(i915)) + guard *= 200; + if (i915_gem_object_is_tiled(obj)) guard = max(guard, i915_gem_object_get_tile_row_size(obj)); -- 2.34.1