Re: [PATCH v11 0/2] hung_task: Improve warning budget handling and task reporting
From: Andrew Morton
Date: Sun Oct 04 2026 - 14:28:27 EST
On Sun, 4 Oct 2026 12:36:08 -0400 Aaron Tomlin <atomlin@xxxxxxxxxxx> wrote:
> The hung_task watchdog detects tasks stuck in TASK_UNINTERRUPTIBLE (D)
> state for longer than CONFIG_DEFAULT_HUNG_TASK_TIMEOUT seconds. To prevent
> log spam during system spikes, sysctl_hung_task_warnings enforces a budget
> on the number of logged warnings.
>
> However, the current implementation has two major limitations:
>
> ...
>
> This patch series resolves both limitations by decoupling the configured
> warning limit from the active runtime budget, automatically resetting the
> budget upon system recovery or sysctl updates, and emitting a single
> aggregate summary line when hung tasks are detected under an exhausted
> warning budget.
Thanks, I've updated mm.git's mm-nonmm-unstable branch to this version.
>
> Changes since v10:
>
> - Guarded the suppression notice in hung_task_info() with
> !hung_task_call_panic so suppression messages are not emitted for tasks
> dumped while panicking, and simplified the log message to state details
> are suppressed until the budget is reset
>
> - Added Reviewed-by: tag from Bradley Morgan <brads@xxxxxxxxxxxxxx>
>
Here's how v11 altered mm.git:
kernel/hung_task.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
--- a/kernel/hung_task.c~b
+++ a/kernel/hung_task.c
@@ -276,8 +276,8 @@ static void hung_task_info(struct task_s
sched_show_task(t);
debug_show_blocker(t, timeout);
- if (!hung_task_warnings_budget)
- pr_info("hung_task: further per-task details suppressed until warning budget is reset or panic is triggered (see sysctl kernel.hung_task_warnings)\n");
+ if (!hung_task_warnings_budget && !hung_task_call_panic)
+ pr_info("hung_task: further per-task details suppressed until warning budget is reset (see sysctl kernel.hung_task_warnings)\n");
}
touch_nmi_watchdog();
_