sysrq: Restore original console_loglevel when sysrq disabled
authorPetr Mladek <pmladek@suse.com>
Fri, 11 Jan 2019 12:45:15 +0000 (13:45 +0100)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 11 Mar 2020 06:53:04 +0000 (07:53 +0100)
commit 075e1a0c50f59ea210561d0d0fedbd945615df78 upstream.

The sysrq header line is printed with an increased loglevel
to provide users some positive feedback.

The original loglevel is not restored when the sysrq operation
is disabled. This bug was introduced in 2.6.12 (pre-git-history)
by the commit ("Allow admin to enable only some of the Magic-Sysrq
functions").

Signed-off-by: Petr Mladek <pmladek@suse.com>
Reviewed-by: Sergey Senozhatsky <sergey.senozhatsky@gmail.com>
Reviewed-by: Steven Rostedt (VMware) <rostedt@goodmis.org>
Cc: Tommi Rantala <tommi.t.rantala@nokia.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/tty/sysrq.c

index 53cbf4ebef10a7e0777d46754911a1ef79e2a401..303fa5e1136ed6dd91f92d8bf6a8b78cf159c15c 100644 (file)
@@ -557,6 +557,7 @@ void __handle_sysrq(int key, bool check_mask)
                        op_p->handler(key);
                } else {
                        pr_cont("This sysrq operation is disabled.\n");
+                       console_loglevel = orig_log_level;
                }
        } else {
                pr_cont("HELP : ");