Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1763115AbcLVIZM (ORCPT ); Thu, 22 Dec 2016 03:25:12 -0500 Received: from nbd.name ([46.4.11.11]:59256 "EHLO nbd.name" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752428AbcLVIZL (ORCPT ); Thu, 22 Dec 2016 03:25:11 -0500 From: John Crispin To: Greg Kroah-Hartman , Jiri Slaby Cc: linux-kernel@vger.kernel.org, Felix Fietkau , John Crispin Subject: [PATCH] serial: do not accept sysrq characters via serial port Date: Thu, 22 Dec 2016 08:31:34 +0100 Message-Id: <1482391894-60061-1-git-send-email-john@phrozen.org> X-Mailer: git-send-email 1.7.10.4 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1696 Lines: 48 From: Felix Fietkau many embedded boards have a disconnected TTL level serial which can generate some garbage that can lead to spurious false sysrq detects. Signed-off-by: John Crispin Signed-off-by: Felix Fietkau --- include/linux/serial_core.h | 2 +- lib/Kconfig.debug | 10 ++++++++++ 2 files changed, 11 insertions(+), 1 deletion(-) diff --git a/include/linux/serial_core.h b/include/linux/serial_core.h index 3442014..7e6165b 100644 --- a/include/linux/serial_core.h +++ b/include/linux/serial_core.h @@ -448,7 +448,7 @@ extern void uart_handle_cts_change(struct uart_port *uport, 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) { diff --git a/lib/Kconfig.debug b/lib/Kconfig.debug index a6c8db1..e370d0a 100644 --- a/lib/Kconfig.debug +++ b/lib/Kconfig.debug @@ -397,6 +397,16 @@ 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 + help + Many embedded boards have a disconnected TTL level serial which can + generate some garbage that can lead to spurious false sysrq detects. + This option allows you to decide whether you want to enable the + magic SysRq key. + config DEBUG_KERNEL bool "Kernel debugging" help -- 1.7.10.4