linux_dsm_epyc7002/drivers/gpu/drm/i915/gem
Chris Wilson a8cff4c828 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: 3b4fa9640c ("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
2019-06-10 20:43:08 +01:00
..
selftests drm/i915: Skip context_barrier emission for unused contexts 2019-06-06 13:35:16 +01:00
i915_gem_busy.c drm/i915: Move GEM object busy checking to its own file 2019-05-28 12:45:29 +01:00
i915_gem_clflush.c drm/i915: Move GEM object domain management from struct_mutex to local 2019-05-28 12:45:29 +01:00
i915_gem_clflush.h drm/i915: Move more GEM objects under gem/ 2019-05-28 12:45:29 +01:00
i915_gem_client_blt.c drm/i915: add in-kernel blitter client 2019-05-30 12:01:44 +01:00
i915_gem_client_blt.h drm/i915: add in-kernel blitter client 2019-05-30 12:01:44 +01:00
i915_gem_context_types.h drm/i915: Move object close under its own lock 2019-06-06 12:51:13 +01:00
i915_gem_context.c drm/i915: Skip context_barrier emission for unused contexts 2019-06-06 13:35:16 +01:00
i915_gem_context.h drm/i915: Move more GEM objects under gem/ 2019-05-28 12:45:29 +01:00
i915_gem_dmabuf.c drm/i915: Move GEM object domain management from struct_mutex to local 2019-05-28 12:45:29 +01:00
i915_gem_domain.c drm/i915: Promote i915->mm.obj_lock to be irqsafe 2019-06-10 20:43:08 +01:00
i915_gem_execbuffer.c drm/i915: Move object close under its own lock 2019-06-06 12:51:13 +01:00
i915_gem_fence.c drm/i915: Move GEM object domain management from struct_mutex to local 2019-05-28 12:45:29 +01:00
i915_gem_internal.c drm/i915: Pull scatterlist utils out of i915_gem.h 2019-05-28 12:45:29 +01:00
i915_gem_ioctls.h
i915_gem_mman.c drm/i915: Move mmap and friends to its own file 2019-05-28 12:45:29 +01:00
i915_gem_object_blt.c drm/i915: add in-kernel blitter client 2019-05-30 12:01:44 +01:00
i915_gem_object_blt.h drm/i915: add in-kernel blitter client 2019-05-30 12:01:44 +01:00
i915_gem_object_types.h drm/i915: Move object close under its own lock 2019-06-06 12:51:13 +01:00
i915_gem_object.c drm/i915: Promote i915->mm.obj_lock to be irqsafe 2019-06-10 20:43:08 +01:00
i915_gem_object.h drm/i915: Drop the deferred active reference 2019-05-28 12:45:29 +01:00
i915_gem_pages.c drm/i915: Promote i915->mm.obj_lock to be irqsafe 2019-06-10 20:43:08 +01:00
i915_gem_phys.c drm/i915: Pull scatterlist utils out of i915_gem.h 2019-05-28 12:45:29 +01:00
i915_gem_pm.c drm/i915: Report an earlier wedged event when suspending the engines 2019-06-06 15:21:51 +01:00
i915_gem_pm.h drm/i915: Move more GEM objects under gem/ 2019-05-28 12:45:29 +01:00
i915_gem_shmem.c drm/i915: Track the purgeable objects on a separate eviction list 2019-05-31 21:23:51 +01:00
i915_gem_shrinker.c drm/i915: Promote i915->mm.obj_lock to be irqsafe 2019-06-10 20:43:08 +01:00
i915_gem_stolen.c drm/i915: Promote i915->mm.obj_lock to be irqsafe 2019-06-10 20:43:08 +01:00
i915_gem_throttle.c drm/i915: Move GEM client throttling to its own file 2019-05-28 12:45:29 +01:00
i915_gem_tiling.c drm/i915: Move more GEM objects under gem/ 2019-05-28 12:45:29 +01:00
i915_gem_userptr.c drm/i915: Pull scatterlist utils out of i915_gem.h 2019-05-28 12:45:29 +01:00
i915_gem_wait.c drm/i915: Move GEM object waiting to its own file 2019-05-28 12:45:29 +01:00
i915_gemfs.c drm/i915: Move more GEM objects under gem/ 2019-05-28 12:45:29 +01:00
i915_gemfs.h drm/i915: Move more GEM objects under gem/ 2019-05-28 12:45:29 +01:00
Makefile
Makefile.header-test