Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 17b93c40 authored by Chris Wilson's avatar Chris Wilson
Browse files

drm/i915: Drain any freed objects prior to hibernation



As we call into the shrinker during freeze, we may have freed more
objects since we idled during i915_gem_suspend. Make sure we flush the
i915_gem_free_objects worker prior to saving the unwanted pages into the
hibernation image.

Signed-off-by: default avatarChris Wilson <chris@chris-wilson.co.uk>
Cc: Joonas Lahtinen <joonas.lahtinen@linux.intel.com>
Link: http://patchwork.freedesktop.org/patch/msgid/20170407102552.5781-2-chris@chris-wilson.co.uk


Reviewed-by: default avatarJoonas Lahtinen <joonas.lahtinen@linux.intel.com>
parent d0aa301a
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -4896,6 +4896,7 @@ int i915_gem_freeze_late(struct drm_i915_private *dev_priv)
	 */

	i915_gem_shrink(dev_priv, -1UL, I915_SHRINK_UNBOUND);
	i915_gem_drain_freed_objects(dev_priv);

	mutex_lock(&dev_priv->drm.struct_mutex);
	for (p = phases; *p; p++) {