On 12/07/14 01:47, Greg Kroah-Hartman wrote:
On Fri, Jul 11, 2014 at 01:30:11PM +0100, Daniel Thompson wrote:
At present it is not possible to boot with the ttyNMI0 console treating character input normally. To use the console requires that kdb be entered and the nmi_console command be used to enable the console (or if only kgdb is present then gdb must directly manipulate the value of kgdb_nmi_tty_enabled).
Introducing a module parameter makes the console much more usable.
Signed-off-by: Daniel Thompson daniel.thompson@linaro.org Cc: Greg Kroah-Hartman gregkh@linuxfoundation.org Cc: Jiri Slaby jslaby@suse.cz Cc: linux-serial@vger.kernel.org
drivers/tty/serial/kgdb_nmi.c | 5 +++++ 1 file changed, 5 insertions(+)
diff --git a/drivers/tty/serial/kgdb_nmi.c b/drivers/tty/serial/kgdb_nmi.c index cfadf29..9361d69 100644 --- a/drivers/tty/serial/kgdb_nmi.c +++ b/drivers/tty/serial/kgdb_nmi.c @@ -43,6 +43,11 @@ module_param_named(magic, kgdb_nmi_magic, charp, 0600); MODULE_PARM_DESC(magic, "magic sequence to enter NMI debugger (default $3#33)"); static bool kgdb_nmi_tty_enabled; +module_param_named(tty, kgdb_nmi_tty_enabled, bool, 0600); +MODULE_PARM_DESC(tty, "if set to false (default), characters received from "
"the UART will be passed exclusively to the knock "
"detector; when set to true characters will be passed "
"both to the knock detector and to the TTY layer");
Module options suck rocks through straws.
Isn't there _any_ other way to determine this "dynamically"? How will someone know to set this option?
Yeah, there are other options in this module, but please, why add more?
Thanks for the comment.
Yes. I think we can do this dynamically.
The two modes currently offered are:
1. characters bypass TTY layer and knock detector interactively prompts for the knock ('Press $3#33 to enter debugger>')
2. characters are routed to TTY layer and to a (silenced) knock detector
I think we might be able to select modes based on whether there is a userspace process reading from the tty (i.e. if there is a getty then act like a proper tty, if there is no getty allow prompting).