mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2026-02-16 20:05:13 -05:00
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: 65dd4ed0f4 ("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
This commit is contained in:
committed by
Daniele Ceraolo Spurio
parent
6fa6c7a50e
commit
604b5ee4a6
@@ -1324,9 +1324,16 @@ static int ct_receive(struct intel_guc_ct *ct)
|
||||
|
||||
static void ct_try_receive_message(struct intel_guc_ct *ct)
|
||||
{
|
||||
struct intel_guc *guc = ct_to_guc(ct);
|
||||
int ret;
|
||||
|
||||
if (GEM_WARN_ON(!ct->enabled))
|
||||
if (!ct->enabled) {
|
||||
GEM_WARN_ON(!guc_to_gt(guc)->uc.reset_in_progress);
|
||||
return;
|
||||
}
|
||||
|
||||
/* When interrupt disabled, message handling is not expected */
|
||||
if (!guc->interrupts.enabled)
|
||||
return;
|
||||
|
||||
ret = ct_receive(ct);
|
||||
|
||||
Reference in New Issue
Block a user