OSDN Git Service

drm/i915/gt: Close race between cacheline_retire and free
authorChris Wilson <chris@chris-wilson.co.uk>
Fri, 6 Mar 2020 15:46:47 +0000 (15:46 +0000)
committerChris Wilson <chris@chris-wilson.co.uk>
Sat, 7 Mar 2020 00:05:54 +0000 (00:05 +0000)
commit2d4bd971f5baa51418625f379a69f5d58b5a0450
tree7f6dd2e32a3fc8593b6983d5b9aac70375b77483
parent3df2deed411e0f1b7312baf0139aab8bba4c0410
drm/i915/gt: Close race between cacheline_retire and free

If the cacheline may still be busy, atomically mark it for future
release, and only if we can determine that it will never be used again,
immediately free it.

Closes: https://gitlab.freedesktop.org/drm/intel/issues/1392
Fixes: ebece7539242 ("drm/i915: Keep timeline HWSP allocated until idle across the system")
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Cc: Tvrtko Ursulin <tvrtko.ursulin@intel.com>
Cc: Mika Kuoppala <mika.kuoppala@linux.intel.com>
Cc: Matthew Auld <matthew.auld@intel.com>
Reviewed-by: Mika Kuoppala <mika.kuoppala@linux.intel.com>
Cc: <stable@vger.kernel.org> # v5.2+
Link: https://patchwork.freedesktop.org/patch/msgid/20200306154647.3528345-1-chris@chris-wilson.co.uk
drivers/gpu/drm/i915/gt/intel_timeline.c