diff options
Diffstat (limited to '')
-rw-r--r-- | debian/patches-rt/0024-printk-Coordinate-direct-printing-in-panic.patch (renamed from debian/patches-rt/0027-printk-Coordinate-direct-printing-in-panic.patch) | 19 |
1 files changed, 10 insertions, 9 deletions
diff --git a/debian/patches-rt/0027-printk-Coordinate-direct-printing-in-panic.patch b/debian/patches-rt/0024-printk-Coordinate-direct-printing-in-panic.patch index 4893dd463f..eb17ba5098 100644 --- a/debian/patches-rt/0027-printk-Coordinate-direct-printing-in-panic.patch +++ b/debian/patches-rt/0024-printk-Coordinate-direct-printing-in-panic.patch @@ -1,7 +1,7 @@ From: John Ogness <john.ogness@linutronix.de> Date: Wed, 22 Nov 2023 11:56:58 +0000 -Subject: [PATCH 27/48] printk: Coordinate direct printing in panic -Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/6.8/older/patches-6.8.2-rt11.tar.xz +Subject: [PATCH 24/46] printk: Coordinate direct printing in panic +Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/6.9/older/patches-6.9-rt5.tar.xz Perform printing by nbcon consoles on the panic CPU from the printk() caller context in order to get panic messages printed @@ -18,6 +18,7 @@ behavior (i.e. legacy consoles will always attempt to print from the printk() caller context). Signed-off-by: John Ogness <john.ogness@linutronix.de> +Reviewed-by: Petr Mladek <pmladek@suse.com> Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de> --- include/linux/printk.h | 5 +++ @@ -32,7 +33,7 @@ Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de> extern asmlinkage void dump_stack(void) __cold; void printk_trigger_flush(void); +void printk_legacy_allow_panic_sync(void); - extern void nbcon_driver_acquire(struct console *con); + extern bool nbcon_driver_try_acquire(struct console *con); extern void nbcon_driver_release(struct console *con); void nbcon_atomic_flush_unsafe(void); @@ -278,6 +279,10 @@ static inline void printk_trigger_flush( @@ -43,12 +44,12 @@ Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de> +{ +} + - static inline void nbcon_driver_acquire(struct console *con) + static inline bool nbcon_driver_try_acquire(struct console *con) { - } + return false; --- a/kernel/panic.c +++ b/kernel/panic.c -@@ -364,6 +364,8 @@ void panic(const char *fmt, ...) +@@ -368,6 +368,8 @@ void panic(const char *fmt, ...) panic_other_cpus_shutdown(_crash_kexec_post_notifiers); @@ -70,7 +71,7 @@ Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de> */ static bool have_nbcon_console; -@@ -2335,12 +2337,29 @@ int vprintk_store(int facility, int leve +@@ -2330,12 +2332,29 @@ int vprintk_store(int facility, int leve return ret; } @@ -101,7 +102,7 @@ Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de> /* Suppress unimportant messages after panic happens */ if (unlikely(suppress_printk)) -@@ -2356,15 +2375,42 @@ asmlinkage int vprintk_emit(int facility +@@ -2351,15 +2370,42 @@ asmlinkage int vprintk_emit(int facility if (level == LOGLEVEL_SCHED) { level = LOGLEVEL_DEFAULT; @@ -147,7 +148,7 @@ Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de> /* * The caller may be holding system-critical or * timing-sensitive locks. Disable preemption during -@@ -2384,10 +2430,10 @@ asmlinkage int vprintk_emit(int facility +@@ -2379,10 +2425,10 @@ asmlinkage int vprintk_emit(int facility preempt_enable(); } |