On Mon, 2017-12-04 at 12:43 +0000, Chris Wilson wrote: > From the shrinker paths, we want to relinquish the GPU and GGTT access to > the object, releasing the backing storage back to the system for > swapout. As a part of that process we would unpin the pages, marking > them for access by the CPU (for the swapout/swapin). However, if that > process was interrupted after unbind the vma, we missed a flush of the > inflight GGTT writes before we made that GTT space available again for > reuse, with the prospect that we would redirect them to another page. > > The bug dates back to the introduction of multiple GGTT vma, but the > code itself dates to commit 02bef8f98d26 ("drm/i915: Unbind closed vma > for i915_gem_object_unbind()"). > > Fixes: 02bef8f98d26 ("drm/i915: Unbind closed vma for i915_gem_object_unbind()") > Fixes: c5ad54cf7dd8 ("drm/i915: Use partial view in mmap fault handler") > Signed-off-by: Chris Wilson <chris@xxxxxxxxxxxxxxxxxx> > Cc: Joonas Lahtinen <joonas.lahtinen@xxxxxxxxxxxxxxx> > Cc: stable@xxxxxxxxxxxxxxx Reviewed-by: Joonas Lahtinen <joonas.lahtinen@xxxxxxxxxxxxxxx> Regards, Joonas -- Joonas Lahtinen Open Source Technology Center Intel Corporation