Re: [PATCH printk v1 2/2] printk: Defer legacy printing when holding printk_cpu_sync
From: Petr Mladek
Date: Wed Dec 11 2024 - 10:04:32 EST
On Mon 2024-12-09 12:23:46, John Ogness wrote:
> The documentation of printk_cpu_sync_get() clearly states
> that the owner must never perform any activities where it waits
> for a CPU. For legacy printing there can be spinning on the
> console_lock and on the port lock. Therefore legacy printing
> must be deferred when holding the printk_cpu_sync.
>
> Note that in the case of emergency states, atomic consoles
> are not prevented from printing when printk is deferred. This
> is appropriate because they do not spin-wait indefinitely for
> other CPUs.
>
It might be worth adding a reference to the original report
to show that the problem is real.
Reported-by: Rik van Riel <riel@xxxxxxxxxxx>
Closes: https://lore.kernel.org/r/20240715232052.73eb7fb1@xxxxxxxxxxxxxxxxxxxx
> Signed-off-by: John Ogness <john.ogness@xxxxxxxxxxxxx>
> Fixes: 55d6af1d6688 ("lib/nmi_backtrace: explicitly serialize banner and regs")
Anyway, it looks good.
Reviewed-by: Petr Mladek <pmladek@xxxxxxxx>
Best Regards,
Petr
PS: I am going to wait few more days for eventual feedback. I'll push
it when nobody complains.
I could add the above mentioned references when pushing.