serial: kgdb_nmi: No CON_ENABLED by default
authorDaniel Thompson <daniel.thompson@linaro.org>
Wed, 3 Sep 2014 11:57:52 +0000 (12:57 +0100)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Mon, 8 Sep 2014 23:26:07 +0000 (16:26 -0700)
At present this console is optionally registered by NULL checking
arch_kgdb_ops.enable_nmi. In practice this requires the architecture
dependant code to implement some kind of control (e.g. module arguments)
to enable/disable this feature.

The kernel already provides us the perfectly adequate console= argument
to enable/disable consoles. Let's use that instead!

Signed-off-by: Daniel Thompson <daniel.thompson@linaro.org>
Cc: Jiri Slaby <jslaby@suse.cz>
Cc: linux-serial@vger.kernel.org
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/tty/serial/kgdb_nmi.c

index 6ec7501b464d7cad00729bec1fd1c044db7f2e83..129dc5be6028178344ba81f8225a8322e7c57d1a 100644 (file)
@@ -46,6 +46,8 @@ static atomic_t kgdb_nmi_num_readers = ATOMIC_INIT(0);
 
 static int kgdb_nmi_console_setup(struct console *co, char *options)
 {
+       arch_kgdb_ops.enable_nmi(1);
+
        /* The NMI console uses the dbg_io_ops to issue console messages. To
         * avoid duplicate messages during kdb sessions we must inform kdb's
         * I/O utilities that messages sent to the console will automatically
@@ -77,7 +79,7 @@ static struct console kgdb_nmi_console = {
        .setup  = kgdb_nmi_console_setup,
        .write  = kgdb_nmi_console_write,
        .device = kgdb_nmi_console_device,
-       .flags  = CON_PRINTBUFFER | CON_ANYTIME | CON_ENABLED,
+       .flags  = CON_PRINTBUFFER | CON_ANYTIME,
        .index  = -1,
 };
 
@@ -354,7 +356,6 @@ int kgdb_register_nmi_console(void)
        }
 
        register_console(&kgdb_nmi_console);
-       arch_kgdb_ops.enable_nmi(1);
 
        return 0;
 err_drv_reg: