

Signed-off-by: Andrew Morton <akpm@osdl.org>
---

 25-akpm/drivers/serial/8250.c        |    6 +-----
 25-akpm/drivers/serial/serial_core.c |    8 ++++++--
 25-akpm/include/linux/serial_core.h  |    3 ---
 3 files changed, 7 insertions(+), 10 deletions(-)

diff -puN drivers/serial/serial_core.c~kgdb-ga-fixes drivers/serial/serial_core.c
--- 25/drivers/serial/serial_core.c~kgdb-ga-fixes	2004-11-10 00:36:53.965291744 -0800
+++ 25-akpm/drivers/serial/serial_core.c	2004-11-10 00:36:53.972290680 -0800
@@ -1921,8 +1921,12 @@ uart_configure_port(struct uart_driver *
 	unsigned int flags;
 
 #ifdef CONFIG_KGDB
-	if (port->kgdb)
-		return;
+	{
+		extern int kgdb_irq;
+
+		if (port->irq == kgdb_irq)
+			return;
+	}
 #endif
 
 	/*
diff -puN drivers/serial/8250.c~kgdb-ga-fixes drivers/serial/8250.c
--- 25/drivers/serial/8250.c~kgdb-ga-fixes	2004-11-10 00:36:53.967291440 -0800
+++ 25-akpm/drivers/serial/8250.c	2004-11-10 00:36:53.974290376 -0800
@@ -1352,7 +1352,7 @@ static void serial8250_break_ctl(struct 
 }
 
 #ifdef CONFIG_KGDB
-static int kgdb_irq = -1;
+int kgdb_irq = -1;
 #endif
 
 static int serial8250_startup(struct uart_port *port)
@@ -1958,10 +1958,6 @@ static void __init serial8250_isa_init_p
 	for (i = 0; i < UART_NR; i++) {
 		struct uart_8250_port *up = &serial8250_ports[i];
 
-#ifdef CONFIG_KGDB
-		if (up->port.irq == kgdb_irq)
-			up->port.kgdb = 1;
-#endif
 		up->port.line = i;
 		spin_lock_init(&up->port.lock);
 
diff -puN include/linux/serial_core.h~kgdb-ga-fixes include/linux/serial_core.h
--- 25/include/linux/serial_core.h~kgdb-ga-fixes	2004-11-10 00:36:58.065668392 -0800
+++ 25-akpm/include/linux/serial_core.h	2004-11-10 00:37:03.185890000 -0800
@@ -178,9 +178,6 @@ struct uart_port {
 	unsigned char		x_char;			/* xon/xoff char */
 	unsigned char		regshift;		/* reg offset shift */
 	unsigned char		iotype;			/* io access style */
-#ifdef CONFIG_KGDB
-	int			kgdb;			/* in use by kgdb */
-#endif
 #define UPIO_PORT		(0)
 #define UPIO_HUB6		(1)
 #define UPIO_MEM		(2)
_
