serial: bfin_5xx: kgdboc should accept gdb break only when it is active
authorSonic Zhang <sonic.zhang@analog.com>
Tue, 19 Jan 2010 11:13:12 +0000 (06:13 -0500)
committerGreg Kroah-Hartman <gregkh@suse.de>
Tue, 2 Mar 2010 22:43:17 +0000 (14:43 -0800)
If we always check for gdb breaks even when it isn't active, we get false
positives on normal code and the system panics.

URL: http://blackfin.uclinux.org/gf/tracker/5277

Signed-off-by: Sonic Zhang <sonic.zhang@analog.com>
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
drivers/serial/bfin_5xx.c

index b5a9b37..6b87955 100644 (file)
@@ -237,7 +237,8 @@ static void bfin_serial_rx_chars(struct bfin_serial_port *uart)
 
 #if defined(CONFIG_KGDB_SERIAL_CONSOLE) || \
        defined(CONFIG_KGDB_SERIAL_CONSOLE_MODULE)
-       if (kgdb_connected && kgdboc_port_line == uart->port.line)
+       if (kgdb_connected && kgdboc_port_line == uart->port.line
+               && kgdboc_break_enabled)
                if (ch == 0x3) {/* Ctrl + C */
                        kgdb_breakpoint();
                        return;