Skip to content

Commit 1696b0c

Browse files
zhanjunrodrigovivi
authored andcommitted
drm/i915/guc: Skip communication warning on reset in progress
GuC IRQ and tasklet handler receive just single G2H message, and let other messages to be received from next tasklet. During this chained tasklet process, if reset process started, communication will be disabled. Skip warning for this condition. Fixes: 65dd4ed ("drm/i915/guc: Don't receive all G2H messages in irq handler") Closes: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/15018 Signed-off-by: Zhanjun Dong <zhanjun.dong@intel.com> Reviewed-by: Vinay Belgaumkar <vinay.belgaumkar@intel.com> Signed-off-by: Daniele Ceraolo Spurio <daniele.ceraolospurio@intel.com> Link: https://lore.kernel.org/r/20250929152904.269776-1-zhanjun.dong@intel.com (cherry picked from commit 604b5ee) Signed-off-by: Rodrigo Vivi <rodrigo.vivi@intel.com>
1 parent 3a86608 commit 1696b0c

1 file changed

Lines changed: 8 additions & 1 deletion

File tree

drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1325,9 +1325,16 @@ static int ct_receive(struct intel_guc_ct *ct)
13251325

13261326
static void ct_try_receive_message(struct intel_guc_ct *ct)
13271327
{
1328+
struct intel_guc *guc = ct_to_guc(ct);
13281329
int ret;
13291330

1330-
if (GEM_WARN_ON(!ct->enabled))
1331+
if (!ct->enabled) {
1332+
GEM_WARN_ON(!guc_to_gt(guc)->uc.reset_in_progress);
1333+
return;
1334+
}
1335+
1336+
/* When interrupt disabled, message handling is not expected */
1337+
if (!guc->interrupts.enabled)
13311338
return;
13321339

13331340
ret = ct_receive(ct);

0 commit comments

Comments
 (0)