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)
committerJani Nikula <jani.nikula@intel.com>
Wed, 11 Mar 2020 21:12:39 +0000 (23:12 +0200)
commit8ea6bb8e4d47e07518e5dba4f5cb77e210f0df82
tree63ae0ea10427740862aa9ec90421275c9602d586
parenteafc2aa20fba319b6e791a1b0c45a91511eccb6b
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
(cherry picked from commit 2d4bd971f5baa51418625f379a69f5d58b5a0450)
Signed-off-by: Jani Nikula <jani.nikula@intel.com>
drivers/gpu/drm/i915/gt/intel_timeline.c