Revert "drm/i915/userptr: Acquire the page lock around set_page_dirty()"
authorChris Wilson <chris@chris-wilson.co.uk>
Thu, 12 Sep 2019 12:56:34 +0000 (13:56 +0100)
committerLinus Torvalds <torvalds@linux-foundation.org>
Thu, 12 Sep 2019 13:55:03 +0000 (14:55 +0100)
commit505a8ec7e11ae5236c4a154a1e24ef49a8349600
tree9d1fac93a7f0a94710763bc2ef19ff4e623ca262
parent98dcb386e5c3d53da2ed0b14b5930a01c90ad36a
Revert "drm/i915/userptr: Acquire the page lock around set_page_dirty()"

The userptr put_pages can be called from inside try_to_unmap, and so
enters with the page lock held on one of the object's backing pages. We
cannot take the page lock ourselves for fear of recursion.

Reported-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Reported-by: Martin Wilck <Martin.Wilck@suse.com>
Reported-by: Leo Kraav <leho@kraav.com>
Fixes: aa56a292ce62 ("drm/i915/userptr: Acquire the page lock around set_page_dirty()")
References: https://bugzilla.kernel.org/show_bug.cgi?id=203317
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Cc: Tvrtko Ursulin <tvrtko.ursulin@intel.com>
Cc: Jani Nikula <jani.nikula@intel.com>
Cc: Joonas Lahtinen <joonas.lahtinen@linux.intel.com>
Cc: stable@vger.kernel.org
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
drivers/gpu/drm/i915/gem/i915_gem_userptr.c