From: Greg Kroah-Hartman Date: Tue, 9 Nov 2021 16:16:07 +0000 (+0100) Subject: 5.10-stable patches X-Git-Tag: v4.4.292~18 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=e17065ec19503b5520597773dea316f17b09e1a4;p=thirdparty%2Fkernel%2Fstable-queue.git 5.10-stable patches added patches: printk-console-allow-to-disable-console-output-by-using-console-or-console-null.patch --- diff --git a/queue-5.10/printk-console-allow-to-disable-console-output-by-using-console-or-console-null.patch b/queue-5.10/printk-console-allow-to-disable-console-output-by-using-console-or-console-null.patch new file mode 100644 index 00000000000..3e9787cfb75 --- /dev/null +++ b/queue-5.10/printk-console-allow-to-disable-console-output-by-using-console-or-console-null.patch @@ -0,0 +1,62 @@ +From 3cffa06aeef7ece30f6b5ac0ea51f264e8fea4d0 Mon Sep 17 00:00:00 2001 +From: Petr Mladek +Date: Wed, 11 Nov 2020 14:54:50 +0100 +Subject: printk/console: Allow to disable console output by using console="" or console=null + +From: Petr Mladek + +commit 3cffa06aeef7ece30f6b5ac0ea51f264e8fea4d0 upstream. + +The commit 48021f98130880dd74 ("printk: handle blank console arguments +passed in.") prevented crash caused by empty console= parameter value. + +Unfortunately, this value is widely used on Chromebooks to disable +the console output. The above commit caused performance regression +because the messages were pushed on slow console even though nobody +was watching it. + +Use ttynull driver explicitly for console="" and console=null +parameters. It has been created for exactly this purpose. + +It causes that preferred_console is set. As a result, ttySX and ttyX +are not used as a fallback. And only ttynull console gets registered by +default. + +It still allows to register other consoles either by additional console= +parameters or SPCR. It prevents regression because it worked this way even +before. Also it is a sane semantic. Preventing output on all consoles +should be done another way, for example, by introducing mute_console +parameter. + +Link: https://lore.kernel.org/r/20201006025935.GA597@jagdpanzerIV.localdomain +Suggested-by: Sergey Senozhatsky +Reviewed-by: Guenter Roeck +Tested-by: Guenter Roeck +Acked-by: Sergey Senozhatsky +Signed-off-by: Petr Mladek +Link: https://lore.kernel.org/r/20201111135450.11214-3-pmladek@suse.com +Cc: Yi Fan +Signed-off-by: Greg Kroah-Hartman +--- + kernel/printk/printk.c | 9 ++++++++- + 1 file changed, 8 insertions(+), 1 deletion(-) + +--- a/kernel/printk/printk.c ++++ b/kernel/printk/printk.c +@@ -2213,8 +2213,15 @@ static int __init console_setup(char *st + char *s, *options, *brl_options = NULL; + int idx; + +- if (str[0] == 0) ++ /* ++ * console="" or console=null have been suggested as a way to ++ * disable console output. Use ttynull that has been created ++ * for exacly this purpose. ++ */ ++ if (str[0] == 0 || strcmp(str, "null") == 0) { ++ __add_preferred_console("ttynull", 0, NULL, NULL, true); + return 1; ++ } + + if (_braille_console_setup(&str, &brl_options)) + return 1; diff --git a/queue-5.10/series b/queue-5.10/series index 7af153232ea..290ab61b478 100644 --- a/queue-5.10/series +++ b/queue-5.10/series @@ -7,3 +7,4 @@ usb-gadget-mark-usb_fsl_qe-broken-on-64-bit.patch usb-musb-balance-list-entry-in-musb_gadget_queue.patch usb-storage-add-compatibility-quirk-flags-for-iodd-2531-2541.patch binder-don-t-detect-sender-target-during-buffer-cleanup.patch +printk-console-allow-to-disable-console-output-by-using-console-or-console-null.patch