]> git.baikalelectronics.ru Git - kernel.git/commit
drm/i915/gt: Serialize TLB invalidates with GT resets
authorChris Wilson <chris.p.wilson@intel.com>
Tue, 12 Jul 2022 15:21:33 +0000 (16:21 +0100)
committerRodrigo Vivi <rodrigo.vivi@intel.com>
Tue, 12 Jul 2022 21:38:01 +0000 (17:38 -0400)
commit7d411520180af74f260e1762ad17c11fb6320bc9
treeefd50e09215e02d4d7eb84504f7da11958520c3c
parent5b48843c453f4ca155e530f8fd7ccba365aaa582
drm/i915/gt: Serialize TLB invalidates with GT resets

Avoid trying to invalidate the TLB in the middle of performing an
engine reset, as this may result in the reset timing out. Currently,
the TLB invalidate is only serialised by its own mutex, forgoing the
uncore lock, but we can take the uncore->lock as well to serialise
the mmio access, thereby serialising with the GDRST.

Tested on a NUC5i7RYB, BIOS RYBDWi35.86A.0380.2019.0517.1530 with
i915 selftest/hangcheck.

Cc: stable@vger.kernel.org # v4.4 and upper
Fixes: 5563858c4d4d ("drm/i915: Flush TLBs before releasing backing store")
Reported-by: Mauro Carvalho Chehab <mchehab@kernel.org>
Tested-by: Mauro Carvalho Chehab <mchehab@kernel.org>
Reviewed-by: Mauro Carvalho Chehab <mchehab@kernel.org>
Signed-off-by: Chris Wilson <chris.p.wilson@intel.com>
Cc: Tvrtko Ursulin <tvrtko.ursulin@linux.intel.com>
Reviewed-by: Andi Shyti <andi.shyti@linux.intel.com>
Acked-by: Thomas Hellström <thomas.hellstrom@linux.intel.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@kernel.org>
Signed-off-by: Rodrigo Vivi <rodrigo.vivi@intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/1e59a7c45dd919a530256b9ac721ac6ea86c0677.1657639152.git.mchehab@kernel.org
drivers/gpu/drm/i915/gt/intel_gt.c