Commit 779dbc2
printk: Avoid non-panic CPUs writing to ringbuffer
Commit 13fb0f7 ("printk: Avoid livelock with heavy printk
during panic") introduced a mechanism to silence non-panic CPUs
if too many messages are being dropped. Aside from trying to
workaround the livelock bugs of legacy consoles, it was also
intended to avoid losing panic messages. However, if non-panic
CPUs are writing to the ringbuffer, then reacting to dropped
messages is too late.
Another motivation is that non-finalized messages already might
be skipped in panic(). In other words, random messages from
non-panic CPUs might already get lost. It is better to ignore
all to avoid confusion.
To avoid losing panic CPU messages, silence non-panic CPUs
immediately on panic.
Signed-off-by: John Ogness <[email protected]>
Reviewed-by: Petr Mladek <[email protected]>
Link: https://lore.kernel.org/r/[email protected]
Signed-off-by: Petr Mladek <[email protected]>1 parent d04d588 commit 779dbc2
1 file changed
+6
-20
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
462 | 462 | | |
463 | 463 | | |
464 | 464 | | |
465 | | - | |
466 | | - | |
467 | | - | |
468 | | - | |
469 | | - | |
470 | | - | |
471 | 465 | | |
472 | 466 | | |
473 | 467 | | |
| |||
2322 | 2316 | | |
2323 | 2317 | | |
2324 | 2318 | | |
2325 | | - | |
| 2319 | + | |
| 2320 | + | |
| 2321 | + | |
| 2322 | + | |
| 2323 | + | |
| 2324 | + | |
2326 | 2325 | | |
2327 | 2326 | | |
2328 | 2327 | | |
| |||
2799 | 2798 | | |
2800 | 2799 | | |
2801 | 2800 | | |
2802 | | - | |
2803 | | - | |
2804 | 2801 | | |
2805 | 2802 | | |
2806 | 2803 | | |
| |||
2828 | 2825 | | |
2829 | 2826 | | |
2830 | 2827 | | |
2831 | | - | |
2832 | | - | |
2833 | | - | |
2834 | | - | |
2835 | | - | |
2836 | | - | |
2837 | | - | |
2838 | | - | |
2839 | | - | |
2840 | | - | |
2841 | | - | |
2842 | 2828 | | |
2843 | 2829 | | |
2844 | 2830 | | |
| |||
0 commit comments