Răsfoiți Sursa

drm/i915: Release fenced GTT mapping on suspend

... so that upon first use after resume we will reacquire the fence reg.

Reported-by: Keith Packard <keithp@keithp.com>
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Chris Wilson 14 ani în urmă
părinte
comite
7d2cb39c33
1 a modificat fișierele cu 9 adăugiri și 2 ștergeri
  1. 9 2
      drivers/gpu/drm/i915/i915_gem.c

+ 9 - 2
drivers/gpu/drm/i915/i915_gem.c

@@ -1794,8 +1794,15 @@ static void i915_gem_reset_fences(struct drm_device *dev)
 
 	for (i = 0; i < 16; i++) {
 		struct drm_i915_fence_reg *reg = &dev_priv->fence_regs[i];
-		if (reg->obj)
-			i915_gem_clear_fence_reg(reg->obj);
+		struct drm_i915_gem_object *obj = reg->obj;
+
+		if (!obj)
+			continue;
+
+		if (obj->tiling_mode)
+			i915_gem_release_mmap(obj);
+
+		i915_gem_clear_fence_reg(obj);
 	}
 }