[PATCH]l gdb serial debugging appears be broken since at least 2.6.28-rc6 by tty layer now hopefully fixed

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi all,
I changed the code back to something it was like in 2.6.27-rc6 & it now works again.

Changed tty_find_polling driver back to something
close to 2.6.27-rc6 the new stuff broke kgdb when
used with the usual kgdboc=/dev/ttyS0,115200 parameter & similar.
Signed-off-by: Denis Joseph Barrow <D.Barow@xxxxxxxxxx>
---Index: linux-2.6/drivers/char/tty_io.c
===================================================================
Index: linux-2.6/drivers/char/tty_io.c
===================================================================
--- linux-2.6.orig/drivers/char/tty_io.c	2009-01-16 16:41:41.000000000 +0100
+++ linux-2.6/drivers/char/tty_io.c	2009-01-16 16:43:59.000000000 +0100
@@ -294,23 +294,13 @@
 {
 	struct tty_driver *p, *res = NULL;
 	int tty_line = 0;
-	int len;
 	char *str;
 
-	for (str = name; *str; str++)
-		if ((*str >= '0' && *str <= '9') || *str == ',')
-			break;
-	if (!*str)
-		return NULL;
-
-	len = str - name;
-	tty_line = simple_strtoul(str, &str, 10);
-
 	mutex_lock(&tty_mutex);
 	/* Search through the tty devices to look for a match */
 	list_for_each_entry(p, &tty_drivers, tty_drivers) {
-		if (strncmp(name, p->name, len) != 0)
-			continue;
+		str = name + strlen(p->name);
+		tty_line = simple_strtoul(str, &str, 10);
 		if (*str == ',')
 			str++;
 		if (*str == '\0')


best regards,
D.J. Barrow

Linux Kernel Developer
Option NV, Gaston Geenslaan 14, 3001 Leuven, Belgium
 
T: +32 16 311 621
F: +32 16 207 164
d.barow@xxxxxxxxxx
www.option.com

Disclaimer:
http://www.option.com/company/disclaimer.shtml
Changed tty_find_polling driver back to something
close to 2.6.27-rc6 the new stuff broke kgdb when
used with the usual kgdboc=/dev/ttyS0,115200 parameter & similar.
Signed-off-by: Denis Joseph Barrow <D.Barow@xxxxxxxxxx>
---Index: linux-2.6/drivers/char/tty_io.c
===================================================================
Index: linux-2.6/drivers/char/tty_io.c
===================================================================
--- linux-2.6.orig/drivers/char/tty_io.c	2009-01-16 16:41:41.000000000 +0100
+++ linux-2.6/drivers/char/tty_io.c	2009-01-16 16:43:59.000000000 +0100
@@ -294,23 +294,13 @@
 {
 	struct tty_driver *p, *res = NULL;
 	int tty_line = 0;
-	int len;
 	char *str;
 
-	for (str = name; *str; str++)
-		if ((*str >= '0' && *str <= '9') || *str == ',')
-			break;
-	if (!*str)
-		return NULL;
-
-	len = str - name;
-	tty_line = simple_strtoul(str, &str, 10);
-
 	mutex_lock(&tty_mutex);
 	/* Search through the tty devices to look for a match */
 	list_for_each_entry(p, &tty_drivers, tty_drivers) {
-		if (strncmp(name, p->name, len) != 0)
-			continue;
+		str = name + strlen(p->name);
+		tty_line = simple_strtoul(str, &str, 10);
 		if (*str == ',')
 			str++;
 		if (*str == '\0')

[Index of Archives]     [Kernel Newbies]     [Security]     [Netfilter]     [Bugtraq]     [Linux PPP]     [Linux FS]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Samba]     [Video 4 Linux]     [Linmodem]     [Device Mapper]     [Linux Kernel for ARM]

  Powered by Linux