]> git.baikalelectronics.ru Git - kernel.git/commit
drm/i915/selftests: Release the struct_mutex to free the objects
authorChris Wilson <chris@chris-wilson.co.uk>
Tue, 3 Jul 2018 10:18:29 +0000 (11:18 +0100)
committerChris Wilson <chris@chris-wilson.co.uk>
Tue, 3 Jul 2018 21:02:36 +0000 (22:02 +0100)
commit1fe0c292cd2a434ab7e1deed64df952548dd708c
tree2b92a2acee20be37a3c03a64836ce00b17be37df
parent29971e8912022b2b17135fee4582bb91558342ef
drm/i915/selftests: Release the struct_mutex to free the objects

live_gtt is a very slow test to run, simply because it tries to allocate
and use as much as the 48b address space as possibly can and in the
process will try to own all of the system memory. This leads to resource
exhaustion and CPU starvation; the latter impacts us when the NMI
watchdog declares a task hung due to a mutex contention with ourselves.
This we can prevent by releasing the struct_mutex and forcing our
i915/rcu workers to run, and in particular flushing the freed object
worker that is the cause for concern.

References: https://bugs.freedesktop.org/show_bug.cgi?id=107094
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Cc: Tvrtko Ursulin <tvrtko.ursulin@intel.com>
Reviewed-by: Tvrtko Ursulin <tvrtko.ursulin@intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20180703101829.7360-1-chris@chris-wilson.co.uk
drivers/gpu/drm/i915/selftests/i915_gem_gtt.c