]> www.infradead.org Git - nvme.git/commit
drm/i915/gt: Do not consider preemption during execlists_dequeue for gen8
authorNitin Gote <nitin.r.gote@intel.com>
Thu, 11 Jul 2024 16:32:08 +0000 (22:02 +0530)
committerAndi Shyti <andi.shyti@linux.intel.com>
Mon, 15 Jul 2024 22:10:05 +0000 (00:10 +0200)
commit7df0be6e6280c6fca01d039864bb123e5e36604b
tree53fff407dd497a7c17661141f5962bc7c8d9af76
parent7b5bdae7740eb6a3d09f9cd4e4b07362a15b86b3
drm/i915/gt: Do not consider preemption during execlists_dequeue for gen8

We're seeing a GPU hang issue on a CHV platform, which was caused by commit
bac24f59f454 ("drm/i915/execlists: Enable coarse preemption boundaries for
Gen8").

The Gen8 platform only supports timeslicing and doesn't have a preemption
mechanism, as its engines do not have a preemption timer.

Commit 751f82b353a6 ("drm/i915/gt: Only disable preemption on Gen8 render
engines") addressed this issue only for render engines. This patch extends
that fix by ensuring that preemption is not considered for all engines on
Gen8 platforms.

v4:
 - Use the correct Fixes tag (Rodrigo Vivi)
 - Reworded commit log (Andi Shyti)

v3:
 - Inside need_preempt(), condition of can_preempt() is not required
   as simplified can_preempt() is enough. (Chris Wilson)

v2: Simplify can_preempt() function (Tvrtko Ursulin)

Fixes: 751f82b353a6 ("drm/i915/gt: Only disable preemption on gen8 render engines")
Closes: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/11396
Suggested-by: Andi Shyti <andi.shyti@intel.com>
Signed-off-by: Nitin Gote <nitin.r.gote@intel.com>
Cc: Chris Wilson <chris.p.wilson@linux.intel.com>
CC: <stable@vger.kernel.org> # v5.12+
Reviewed-by: Jonathan Cavitt <jonathan.cavitt@intel.com>
Reviewed-by: Andi Shyti <andi.shyti@linux.intel.com>
Signed-off-by: Andi Shyti <andi.shyti@linux.intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20240711163208.1355736-1-nitin.r.gote@intel.com
drivers/gpu/drm/i915/gt/intel_execlists_submission.c