From nobody Sat Feb 7 17:10:17 2026 Received: from mail-pj1-f42.google.com (mail-pj1-f42.google.com [209.85.216.42]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 6B33329AAE3 for ; Tue, 2 Dec 2025 17:40:38 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.216.42 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1764697239; cv=none; b=JT8wxK8lMxt/48KgkWFi1XGyjVsfB72bLmxCyO5y736Ga4z1iiiGcTnXjlYVc0yfC1JyVASl6+JMSlMOfrAFFxK4pzp+5uC0cAeuUr8KTOFizaQReYBgRBrATBKpnmnRw1X59Ox7rK8Wo0TxEbZaw4z3TInbXFa/FJtJRn8ifkA= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1764697239; c=relaxed/simple; bh=61fFhLuj73j4khmGR622ivBkJSQWHVl7pdY//9i9smY=; h=From:To:Subject:Date:Message-ID:MIME-Version; b=GRvKivy0Kw+SA2dGUOTRQUSZv5D5Vm3JNanfPpszL+e3/tKb2kGWw3qH583xWyAiV6KgpjWEbDsvZgnGU4oRRoQuTcmQpywMO/N5SSH0vHkfl5uR0R2QJoVl4w8aIhuFHoGEXfOuHvoryFaLSERqF84lWyMfughwidVs1vcp3Hk= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=j1mh29QI; arc=none smtp.client-ip=209.85.216.42 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="j1mh29QI" Received: by mail-pj1-f42.google.com with SMTP id 98e67ed59e1d1-343806688c5so4520742a91.0 for ; Tue, 02 Dec 2025 09:40:38 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1764697238; x=1765302038; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:message-id:date:subject:to :from:from:to:cc:subject:date:message-id:reply-to; bh=Suwn07MxhDyTv/iXiBDND9uQRJx8LmwrIL1oz7+9Bq4=; b=j1mh29QI9zC2Oi2If/NKPCWQvvcleL6ej3tb110OBoH0UIf7bxtOp0Y2Rkz8JIyT7J DLgjaFaWtpmstdyC7cK1wELxEmS419H5TEUMkBaNVeXXv4LhrkCYJkJOe6sVbPAUTSr6 DbwiUyXsX54Ku2U5XkmV/ErEOxRo8/T4mMvHwfHlGE5z2uCW2ABmEgmhsYbm/rN0ryZM njHNIFyiCUjIcLKgTgmoy+4oUMD99q2b7VTOKCQdySQ5sDc/E4Vd0BKGFv991P4PE1VN TjhCuzkEBlnlxgEegR87ZQEZC55x+JTSxIX58zefkNlY1WWpLszPjmuOPiM7L/aisjxt yGfg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1764697238; x=1765302038; h=content-transfer-encoding:mime-version:message-id:date:subject:to :from:x-gm-gg:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=Suwn07MxhDyTv/iXiBDND9uQRJx8LmwrIL1oz7+9Bq4=; b=gZkLQTXOkeOz9Ecs5UbXtKpcRYE4FUg6qdmm5e8nDoWbBO9CW+lZ7YITPVhRB308pW qtMykOMEDEp2kwQnm0zbcH7o1zLX4Oo60EUrVzQf1/8gA7UW4Bu3gojZUPwPoNksz1Xu UzcGN8j2gDPYw3Q9/whZszsnOnaDqHs+kwebjI6G3BqjTgo9wgmNYXox+QQT413AwrxM WQtoRo58a2pUclS35xbQbUbMplTZ1bZ6qonMLDT2vHx7zLzO0V/3LUyH7DXehEUMWQNV 7z8R10gMHm0y54yFdnOYhRuSk4ERxYVIdYEEVqcsqG+sWXAgxdiLUldAdpVkaUOj8ZkV fNOA== X-Forwarded-Encrypted: i=1; AJvYcCVYOxuTLdcF1zNctSf1L0ebEZMgef2tPfaZMLVCHx1UW6ZTiZXn9UudZaPq35mFqwcqvS8aQiL6mEYMM9w=@vger.kernel.org X-Gm-Message-State: AOJu0YwfoOU/DOyRMwwxIbHczG+0hUluWJuiJYuSQT23ItYk/EoEdXas DEMMC0oQ2pY97+p0biUlYfWOJvijzuhDaEy+6JfzxDIKHeeJteJmw/3W X-Gm-Gg: ASbGnctfSIBALhcjHNSXgMInCghRyIAs/Areq+hnqqjABI/ij8W/gbyRtwZUmijnG1R x5uYI0fZDs4h60YUOhd1+ettvv05+Vy+jpG9XVHNY6MbwiaNGUEvYs3qY3cmR9E3mLJ/T+fLt3m BQPVkblWbO9gZUIsh40XaCzJDBzI7cmSUCQDSbCEPG0xkWZvQT9g+5IyuMve97yg9gOYNLQ8aBa cikKVAOMs7QKnUA4Aysq842cGlfvIZ9MPSOMohLFSBSjNudDzgxrHoWNpMwI4aG/93CIVN7Lgtx h2iqF4Xr3kV6ULtEoaoTuQRji8vNeISZOQ1AmpFQWDs0h92T+R2TNyE2k8VKsDuFLewoZA/flAR K0dFDQ+Aw1ejQUA/WKAn0Y9t9/pEVOmOUywmW7V5WxzYIk2gttIep6cl31GOtKATwQDFmuE/vnD 9Qe/x58rqe1amyZ1rra0oa7lHF51IR7WTeQdtjJHMNiNI= X-Google-Smtp-Source: AGHT+IGsp7LsWwQMfABLmuwuvA0AoHSFc0ja3NjzOdkUI/BfNG5pJHaQm6YkUQPDreSQz4bIpkk4zw== X-Received: by 2002:a17:90b:3bcc:b0:340:a5b2:c305 with SMTP id 98e67ed59e1d1-3475ebe6a4amr28136136a91.2.1764697237591; Tue, 02 Dec 2025 09:40:37 -0800 (PST) Received: from localhost (78.31.125.34.bc.googleusercontent.com. [34.125.31.78]) by smtp.gmail.com with UTF8SMTPSA id 98e67ed59e1d1-34910ba5912sm43844a91.7.2025.12.02.09.40.36 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 02 Dec 2025 09:40:37 -0800 (PST) From: Chia-I Wu To: Boris Brezillon , Steven Price , Liviu Dudau , Maarten Lankhorst , Maxime Ripard , Thomas Zimmermann , David Airlie , Simona Vetter , Grant Likely , Heiko Stuebner , dri-devel@lists.freedesktop.org, linux-kernel@vger.kernel.org, ashley.smith@collabora.com Subject: [PATCH] drm/panthor: fix queue_reset_timeout_locked Date: Tue, 2 Dec 2025 09:40:28 -0800 Message-ID: <20251202174028.1600218-1-olvaffe@gmail.com> X-Mailer: git-send-email 2.52.0.158.g65b55ccf14-goog Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" queue_check_job_completion calls queue_reset_timeout_locked to reset the timeout when progress is made. We want the reset to happen when the timeout is running, not when it is suspended. Fixes: 345c5b7cc0f85 ("drm/panthor: Make the timeout per-queue instead of p= er-job") Signed-off-by: Chia-I Wu --- drivers/gpu/drm/panthor/panthor_sched.c | 24 ++++++++++++------------ 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/drivers/gpu/drm/panthor/panthor_sched.c b/drivers/gpu/drm/pant= hor/panthor_sched.c index 389d508b3848e..47e81fc45fb56 100644 --- a/drivers/gpu/drm/panthor/panthor_sched.c +++ b/drivers/gpu/drm/panthor/panthor_sched.c @@ -1052,18 +1052,6 @@ group_is_idle(struct panthor_group *group) return hweight32(inactive_queues) =3D=3D group->queue_count; } =20 -static void -queue_reset_timeout_locked(struct panthor_queue *queue) -{ - lockdep_assert_held(&queue->fence_ctx.lock); - - if (queue->timeout.remaining !=3D MAX_SCHEDULE_TIMEOUT) { - mod_delayed_work(queue->scheduler.timeout_wq, - &queue->timeout.work, - msecs_to_jiffies(JOB_TIMEOUT_MS)); - } -} - static bool group_can_run(struct panthor_group *group) { @@ -1080,6 +1068,18 @@ queue_timeout_is_suspended(struct panthor_queue *que= ue) return queue->timeout.remaining !=3D MAX_SCHEDULE_TIMEOUT; } =20 +static void +queue_reset_timeout_locked(struct panthor_queue *queue) +{ + lockdep_assert_held(&queue->fence_ctx.lock); + + if (!queue_timeout_is_suspended(queue)) { + mod_delayed_work(queue->scheduler.timeout_wq, + &queue->timeout.work, + msecs_to_jiffies(JOB_TIMEOUT_MS)); + } +} + static void queue_suspend_timeout_locked(struct panthor_queue *queue) { --=20 2.52.0.158.g65b55ccf14-goog