Re: small design problem with hso driver
From: Denis Joseph Barrow <hidden>
Date: 2008-10-09 09:01:59
Hi, I've found something suspicous but am not sure if it's my problem. It looks like it when I'm doing a gdb debug session but I can't believe code so wrong can get into the kernel & it didn't cause problems before. Have a look at /drivers/char/tty_io.c tty_open around line 2234 this calls tty->ops->open which calls hso_serial_open & if this returns an error i.e. -ENODEV release_dev is called which calls in tty_open which calls tty->ops_close around line 2003 in tty_io.c. Surely if the driver returns an error code on hso_serial_open hso_serial_close shouldn't be called or have I a complete misunderstanding of char driver semantics. Greg KH wrote:
On Wed, Oct 08, 2008 at 03:52:38PM +0200, Denis Joseph Barrow wrote:quoted
Hi, I'm getting a fairly consistently reproducable problem with the 3g modem hso driver. The most reproducable bug I have. It happens when I plug out the usb modem & ctrl-c out of an ioctl call with the modem connected in paralell over ppp with wvdial Basically whats happening is the hso_serial_close is being called more times than the hso_serial_open & I don't know why.Care to put a trace or printk() to determine who is doing each open and close? thanks, greg k-h
-- best regards, D.J. Barrow -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org More majordomo info at http://vger.kernel.org/majordomo-info.html