drn/i915: Break up long i915_buddy_free_list() with a cond_resched()
authorChris Wilson <chris@chris-wilson.co.uk>
Sat, 21 Dec 2019 14:49:17 +0000 (14:49 +0000)
committerChris Wilson <chris@chris-wilson.co.uk>
Mon, 30 Dec 2019 12:10:38 +0000 (12:10 +0000)
commita9e395a4ab795e6f96961ba6d0620f91b2dce9a0
treec573068208135f10652ae61b7ef1c5a2d38866d3
parenta3d9382bd439e7be1858abc3d5f014dd55913448
drn/i915: Break up long i915_buddy_free_list() with a cond_resched()

In the selftests, we may feed very long lists of blocks to be freed on
culmination of the tests. This coupled with kasan and other
malloc-tracing can make the kmem_cache_free() operation time consuming,
and doing many of those trigger soft lockup warnings. Break the list up
with a cond_resched().

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Cc: Matthew Auld <matthew.auld@intel.com>
Reviewed-by: Matthew Auld <matthew.auld@intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20191221144917.1040662-1-chris@chris-wilson.co.uk
drivers/gpu/drm/i915/i915_buddy.c