]> git.baikalelectronics.ru Git - kernel.git/commit
drm/i915: Promote i915->mm.obj_lock to be irqsafe
authorChris Wilson <chris@chris-wilson.co.uk>
Mon, 10 Jun 2019 14:54:30 +0000 (15:54 +0100)
committerChris Wilson <chris@chris-wilson.co.uk>
Mon, 10 Jun 2019 19:43:08 +0000 (20:43 +0100)
commit15c96eb70d82e63ce21ad7bce0fb307cc833dd03
tree1d82abc371c71d0a24b33a943ee72f6dcd3b0c6a
parentefe0213a8787ce30ddef940af134ca7a5e96dfbc
drm/i915: Promote i915->mm.obj_lock to be irqsafe

The intent is to be able to update the mm.lists from inside an irqsoff
section (e.g. from a softirq rcu workqueue), ergo we need to make the
i915->mm.obj_lock irqsafe.

v2: can_discard_pages() ensures we are shrinkable
v3: Beware shadowing of 'flags'

Fixes: 69ae18ee6b7d ("drm/i915: Track the purgeable objects on a separate eviction list")
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=110869
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Cc: Joonas Lahtinen <joonas.lahtinen@linux.intel.com>
Cc: Matthew Auld <matthew.william.auld@gmail.com>
Reviewed-by: Matthew Auld <matthew.william.auld@gmail.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20190610145430.17717-1-chris@chris-wilson.co.uk
drivers/gpu/drm/i915/gem/i915_gem_domain.c
drivers/gpu/drm/i915/gem/i915_gem_object.c
drivers/gpu/drm/i915/gem/i915_gem_pages.c
drivers/gpu/drm/i915/gem/i915_gem_shrinker.c
drivers/gpu/drm/i915/gem/i915_gem_stolen.c
drivers/gpu/drm/i915/i915_debugfs.c
drivers/gpu/drm/i915/i915_gem.c
drivers/gpu/drm/i915/i915_vma.c