From: Chris Wilson Date: Mon, 16 Mar 2020 20:54:50 +0000 (+0000) Subject: drm/i915/gt: Restore check for invalid vma for fencing X-Git-Tag: v5.15~3115^2~24^2~627 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=220a6704ff4373cf1573b663d90d632ea0740210;p=platform%2Fkernel%2Flinux-starfive.git drm/i915/gt: Restore check for invalid vma for fencing Apparently we do try and attach a fence to an invalid vma (during execbuf) so we cannot simply assert it never happens and report EINVAL instead. Fixes: dec9cf9ee8cb ("drm/i915/gt: Pull restoration of GGTT fences underneath the GT") Signed-off-by: Chris Wilson Reviewed-by: Mika Kuoppala Link: https://patchwork.freedesktop.org/patch/msgid/20200316205450.15843-1-chris@chris-wilson.co.uk --- diff --git a/drivers/gpu/drm/i915/gt/intel_ggtt_fencing.c b/drivers/gpu/drm/i915/gt/intel_ggtt_fencing.c index b6ba68c..225970f 100644 --- a/drivers/gpu/drm/i915/gt/intel_ggtt_fencing.c +++ b/drivers/gpu/drm/i915/gt/intel_ggtt_fencing.c @@ -233,10 +233,12 @@ static int fence_update(struct i915_fence_reg *fence, int ret; if (vma) { - GEM_BUG_ON(!i915_vma_is_map_and_fenceable(vma)); GEM_BUG_ON(!i915_gem_object_get_stride(vma->obj) || !i915_gem_object_get_tiling(vma->obj)); + if (!i915_vma_is_map_and_fenceable(vma)) + return -EINVAL; + ret = i915_vma_sync(vma); if (ret) return ret;