Re: [PATCH 5/5] bugs/core: Do not print CPU and PID values in__warn() output
From: Peter Zijlstra
Date: Wed Mar 26 2025 - 04:52:59 EST
On Wed, Mar 26, 2025 at 09:47:50AM +0100, Ingo Molnar wrote:
> For most warnings it's repeated anyway a few lines later, as
> part of the register dump:
>
> WARNING: CPU: 0 PID: 0 at kernel/sched/core.c:8511 sched_init+0x20/0x410
> ^^^^^^^^^^^^^
> Modules linked in:
> CPU: 0 UID: 0 PID: 0 Comm: swapper Not tainted 6.14.0-01616-g94d7af2844aa #4 PREEMPT(undef)
> ^^^^^^^^^^^^^^^^^^
>
> In fact the later dump is richer, as it includes the 'comm' line as well.
>
> As a side effect, this makes some space for the 'file' field to be augmented
> with extra information (the condition string in particular).
>
> Signed-off-by: Ingo Molnar <mingo@xxxxxxxxxx>
> ---
> kernel/panic.c | 7 ++-----
> 1 file changed, 2 insertions(+), 5 deletions(-)
>
> diff --git a/kernel/panic.c b/kernel/panic.c
> index d8635d5cecb2..3101c21ca39f 100644
> --- a/kernel/panic.c
> +++ b/kernel/panic.c
> @@ -725,12 +725,9 @@ void __warn(const char *file, int line, void *caller, unsigned taint,
> disable_trace_on_warning();
>
> if (file)
> - pr_warn("WARNING: CPU: %d PID: %d at %s:%d %pS\n",
> - raw_smp_processor_id(), current->pid, file, line,
> - caller);
> + pr_warn("WARNING: %s:%d at %pS\n", file, line, caller);
> else
> - pr_warn("WARNING: CPU: %d PID: %d at %pS\n",
> - raw_smp_processor_id(), current->pid, caller);
> + pr_warn("WARNING: at %pS\n", caller);
Over the years I've had concurrent WARNs interleaved on the console.
This duplicate information would allow untangling some of that.