]> git.ipfire.org Git - thirdparty/kernel/linux.git/commit
drm/xe: Clear pending_disable before signaling suspend fence
authorTangudu Tilak Tirumalesh <tilak.tirumalesh.tangudu@intel.com>
Wed, 3 Jun 2026 06:52:16 +0000 (12:22 +0530)
committerRodrigo Vivi <rodrigo.vivi@intel.com>
Thu, 4 Jun 2026 13:04:03 +0000 (09:04 -0400)
commit54f2a0442a30fe7a0f6bc8345e81f8b2db8effbd
tree421239247f775d5098eff1b155ce6cc0a11f020a
parentfa7c84726dc217ce0c183926ef9411636c7a2213
drm/xe: Clear pending_disable before signaling suspend fence

In the schedule-disable done path for suspend, we
signal the suspend fence before clearing pending_disable.

That wakeup can let suspend_wait complete and resume be queued
immediately. The resume path may then reach enable_scheduling()
while pending_disable is still set and hit the
!exec_queue_pending_disable(q) assertion.

Fix this by clearing pending_disable before signaling
the suspend fence, so any resumed transition observes a
consistent state.

Fixes: 87651f31ae4e ("drm/xe/guc_submit: fix race around suspend_pending")
Cc: stable@vger.kernel.org # v7.0+
Signed-off-by: Tangudu Tilak Tirumalesh <tilak.tirumalesh.tangudu@intel.com>
Reviewed-by: Thomas Hellstrom <thomas.hellstrom@linux.intel.com>
Signed-off-by: Daniele Ceraolo Spurio <daniele.ceraolospurio@intel.com>
Link: https://patch.msgid.link/20260603065217.3131066-3-tilak.tirumalesh.tangudu@intel.com
(cherry picked from commit 4b1ae138b0e103d753773956a84eebc2edbf62c4)
Signed-off-by: Rodrigo Vivi <rodrigo.vivi@intel.com>
drivers/gpu/drm/xe/xe_guc_submit.c