Commit 132a90d1 authored by John Ogness's avatar John Ogness Committed by Petr Mladek

printk: Rename abandon_console_lock_in_panic() to other_cpu_in_panic()

Currently abandon_console_lock_in_panic() is only used to determine if
the current CPU should immediately release the console lock because
another CPU is in panic. However, later this function will be used by
the CPU to immediately release other resources in this situation.

Rename the function to other_cpu_in_panic(), which is a better
description and does not assume it is related to the console lock.
Signed-off-by: default avatarJohn Ogness <john.ogness@linutronix.de>
Reviewed-by: default avatarSergey Senozhatsky <senozhatsky@chromium.org>
Reviewed-by: default avatarPetr Mladek <pmladek@suse.com>
Signed-off-by: default avatarPetr Mladek <pmladek@suse.com>
Link: https://lore.kernel.org/r/20230717194607.145135-8-john.ogness@linutronix.de
parent 9e70a5e1
...@@ -103,3 +103,5 @@ struct printk_message { ...@@ -103,3 +103,5 @@ struct printk_message {
u64 seq; u64 seq;
unsigned long dropped; unsigned long dropped;
}; };
bool other_cpu_in_panic(void);
...@@ -2612,11 +2612,12 @@ static int console_cpu_notify(unsigned int cpu) ...@@ -2612,11 +2612,12 @@ static int console_cpu_notify(unsigned int cpu)
} }
/* /*
* Return true when this CPU should unlock console_sem without pushing all * Return true if a panic is in progress on a remote CPU.
* messages to the console. This reduces the chance that the console is *
* locked when the panic CPU tries to use it. * On true, the local CPU should immediately release any printing resources
* that may be needed by the panic CPU.
*/ */
static bool abandon_console_lock_in_panic(void) bool other_cpu_in_panic(void)
{ {
if (!panic_in_progress()) if (!panic_in_progress())
return false; return false;
...@@ -2643,7 +2644,7 @@ void console_lock(void) ...@@ -2643,7 +2644,7 @@ void console_lock(void)
might_sleep(); might_sleep();
/* On panic, the console_lock must be left to the panic cpu. */ /* On panic, the console_lock must be left to the panic cpu. */
while (abandon_console_lock_in_panic()) while (other_cpu_in_panic())
msleep(1000); msleep(1000);
down_console_sem(); down_console_sem();
...@@ -2663,7 +2664,7 @@ EXPORT_SYMBOL(console_lock); ...@@ -2663,7 +2664,7 @@ EXPORT_SYMBOL(console_lock);
int console_trylock(void) int console_trylock(void)
{ {
/* On panic, the console_lock must be left to the panic cpu. */ /* On panic, the console_lock must be left to the panic cpu. */
if (abandon_console_lock_in_panic()) if (other_cpu_in_panic())
return 0; return 0;
if (down_trylock_console_sem()) if (down_trylock_console_sem())
return 0; return 0;
...@@ -2978,7 +2979,7 @@ static bool console_flush_all(bool do_cond_resched, u64 *next_seq, bool *handove ...@@ -2978,7 +2979,7 @@ static bool console_flush_all(bool do_cond_resched, u64 *next_seq, bool *handove
any_progress = true; any_progress = true;
/* Allow panic_cpu to take over the consoles safely. */ /* Allow panic_cpu to take over the consoles safely. */
if (abandon_console_lock_in_panic()) if (other_cpu_in_panic())
goto abandon; goto abandon;
if (do_cond_resched) if (do_cond_resched)
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment