From: Sasha Levin Date: Fri, 29 Mar 2024 11:55:35 +0000 (-0400) Subject: Fixes for 4.19 X-Git-Tag: v6.7.12~167^2 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=3eeb3c0389012eccaaf200f2df466cd6b0650d4e;p=thirdparty%2Fkernel%2Fstable-queue.git Fixes for 4.19 Signed-off-by: Sasha Levin --- diff --git a/queue-4.19/printk-update-console_may_schedule-in-console_tryloc.patch b/queue-4.19/printk-update-console_may_schedule-in-console_tryloc.patch new file mode 100644 index 00000000000..d1f1cef2864 --- /dev/null +++ b/queue-4.19/printk-update-console_may_schedule-in-console_tryloc.patch @@ -0,0 +1,46 @@ +From 2dcf5573573786d107a244b1e7562b43abcd636c Mon Sep 17 00:00:00 2001 +From: Sasha Levin +Date: Mon, 26 Feb 2024 13:07:24 +0106 +Subject: printk: Update @console_may_schedule in console_trylock_spinning() + +From: John Ogness + +[ Upstream commit 8076972468584d4a21dab9aa50e388b3ea9ad8c7 ] + +console_trylock_spinning() may takeover the console lock from a +schedulable context. Update @console_may_schedule to make sure it +reflects a trylock acquire. + +Reported-by: Mukesh Ojha +Closes: https://lore.kernel.org/lkml/20240222090538.23017-1-quic_mojha@quicinc.com +Fixes: dbdda842fe96 ("printk: Add console owner and waiter logic to load balance console writes") +Signed-off-by: John Ogness +Reviewed-by: Mukesh Ojha +Reviewed-by: Petr Mladek +Link: https://lore.kernel.org/r/875xybmo2z.fsf@jogness.linutronix.de +Signed-off-by: Petr Mladek +Signed-off-by: Sasha Levin +--- + kernel/printk/printk.c | 6 ++++++ + 1 file changed, 6 insertions(+) + +diff --git a/kernel/printk/printk.c b/kernel/printk/printk.c +index 2ba16c426ba5d..66c78dfd17925 100644 +--- a/kernel/printk/printk.c ++++ b/kernel/printk/printk.c +@@ -1732,6 +1732,12 @@ static int console_trylock_spinning(void) + */ + mutex_acquire(&console_lock_dep_map, 0, 1, _THIS_IP_); + ++ /* ++ * Update @console_may_schedule for trylock because the previous ++ * owner may have been schedulable. ++ */ ++ console_may_schedule = 0; ++ + return 1; + } + +-- +2.43.0 + diff --git a/queue-4.19/series b/queue-4.19/series index 235e9fdb661..dd25641bed7 100644 --- a/queue-4.19/series +++ b/queue-4.19/series @@ -77,3 +77,4 @@ usb-port-don-t-try-to-peer-unused-usb-ports-based-on-location.patch tty-serial-fsl_lpuart-avoid-idle-preamble-pending-if-cts-is-enabled.patch vt-fix-unicode-buffer-corruption-when-deleting-characters.patch fs-aio-check-iocb_aio_rw-before-the-struct-aio_kiocb-conversion.patch +printk-update-console_may_schedule-in-console_tryloc.patch