drm/i915: Fix regression in ba3d8d749b
I pulled the wrong version of the patch from Daniel Vetter which was missing the read barriers -- and the one that was causing all the trouble was from i915_gem_object_put_fence_reg(), leading to GPU hangs on gen3. Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
This commit is contained in:
parent
7213342db5
commit
0bc23aad3b
1 changed files with 6 additions and 2 deletions
|
@ -2430,12 +2430,16 @@ i915_gem_object_put_fence_reg(struct drm_gem_object *obj)
|
||||||
int ret;
|
int ret;
|
||||||
|
|
||||||
ret = i915_gem_object_flush_gpu_write_domain(obj, false);
|
ret = i915_gem_object_flush_gpu_write_domain(obj, false);
|
||||||
if (ret != 0)
|
if (ret)
|
||||||
|
return ret;
|
||||||
|
|
||||||
|
ret = i915_gem_object_wait_rendering(obj);
|
||||||
|
if (ret)
|
||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
|
|
||||||
i915_gem_object_flush_gtt_write_domain(obj);
|
i915_gem_object_flush_gtt_write_domain(obj);
|
||||||
i915_gem_clear_fence_reg (obj);
|
i915_gem_clear_fence_reg(obj);
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue