On Mon, 8 May 2006, Guennadi Liakhovetski wrote:

> Yes. I put a WARN_ON(1) next to ++open_count in both files and I still see 
> it every time I log in and out.

Below is my current version of the patch. No idea in how far it is 
generically acceptable... Works for me.

Guennadi
---
Guennadi Liakhovetski

diff -u a/drivers/usb/serial/console.c b/drivers/usb/serial/console.c
--- a/drivers/usb/serial/console.c      2006-05-09 00:28:03.000000000 +0200
+++ b/drivers/usb/serial/console.c      2006-05-09 00:26:26.000000000 +0200
@@ -296,3 +296,7 @@
        }
 }
 
+int usb_serial_console_port(struct usb_serial_port *port)
+{
+       return (port == usbcons_info.port);
+}
diff -u a/drivers/usb/serial/usb-serial.c b/drivers/usb/serial/usb-serial.c
--- a/drivers/usb/serial/usb-serial.c   2006-05-09 00:27:31.000000000 +0200
+++ b/drivers/usb/serial/usb-serial.c   2006-05-09 00:25:57.000000000 +0200
@@ -208,7 +208,7 @@
        tty->driver_data = port;
        port->tty = tty;
 
-       if (port->open_count == 1) {
+       if (port->open_count == 1 || (port->open_count == 2 && 
usb_serial_console_port(port))) {
 
                /* lock this module before we call it
                 * this may fail, which means we must bail out,
diff -u a/drivers/usb/serial/usb-serial.h b/drivers/usb/serial/usb-serial.h
--- a/drivers/usb/serial/usb-serial.h   2006-05-09 00:27:10.000000000 +0200
+++ b/drivers/usb/serial/usb-serial.h   2006-05-09 00:12:20.000000000 +0200
@@ -249,10 +249,12 @@
 extern void usb_serial_console_init (int debug, int minor);
 extern void usb_serial_console_exit (void);
 extern void usb_serial_console_disconnect(struct usb_serial *serial);
+extern int usb_serial_console_port(struct usb_serial_port *port);
 #else
 static inline void usb_serial_console_init (int debug, int minor) { }
 static inline void usb_serial_console_exit (void) { }
 static inline void usb_serial_console_disconnect(struct usb_serial *serial) {}
+static inline int usb_serial_console_port(struct usb_serial_port *port) 
{return 0;}
 #endif
 
 /* Functions needed by other parts of the usbserial core */


-------------------------------------------------------
Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job easier
Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642
_______________________________________________
linux-usb-devel@lists.sourceforge.net
To unsubscribe, use the last form field at:
https://lists.sourceforge.net/lists/listinfo/linux-usb-devel

Reply via email to