From: John Crispin Subject: serial: do not accept sysrq characters via serial port many embedded boards have a disconnected TTL level serial which can generate some garbage that can lead to spurious false sysrq detects. [john@phrozen.org: sent upstream 22.12.2016] Signed-off-by: John Crispin Signed-off-by: Felix Fietkau --- include/linux/serial_core.h | 2 +- lib/Kconfig.debug | 5 +++++ 2 files changed, 6 insertions(+), 1 deletion(-) --- a/include/linux/serial_core.h +++ b/include/linux/serial_core.h @@ -456,7 +456,7 @@ extern void uart_handle_cts_change(struc extern void uart_insert_char(struct uart_port *port, unsigned int status, unsigned int overrun, unsigned int ch, unsigned int flag); -#ifdef SUPPORT_SYSRQ +#if defined(SUPPORT_SYSRQ) && defined(CONFIG_MAGIC_SYSRQ_SERIAL) static inline int uart_handle_sysrq_char(struct uart_port *port, unsigned int ch) { --- a/lib/Kconfig.debug +++ b/lib/Kconfig.debug @@ -396,6 +396,11 @@ config MAGIC_SYSRQ_DEFAULT_ENABLE This may be set to 1 or 0 to enable or disable them all, or to a bitmask as described in Documentation/sysrq.txt. +config MAGIC_SYSRQ_SERIAL + bool "Enable magic SysRq key over serial" + depends on MAGIC_SYSRQ + default y + config DEBUG_KERNEL bool "Kernel debugging" help