From alan@lxorguk.ukuu.org.uk Tue Jan 8 14:18:49 2008 From: Alan Cox Date: Thu, 3 Jan 2008 16:59:04 +0000 Subject: USB: keyspan: Fix oops To: akpm@osdl.org, greg@kroah.com, linux-usb@vger.kernel.org Message-ID: <20080103165904.6ccc93a8@lxorguk.ukuu.org.uk> If we get a data URB back from the hardware after we have put the tty to bed we go kaboom. Fortunately all we need to do is process the URB without trying to ram its contents down the throat of an ex-tty. Cc: stable Signed-off-by: Alan Cox Signed-off-by: Greg Kroah-Hartman --- drivers/usb/serial/keyspan.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) --- a/drivers/usb/serial/keyspan.c +++ b/drivers/usb/serial/keyspan.c @@ -838,7 +838,7 @@ static void usa49_indat_callback(struct port = (struct usb_serial_port *) urb->context; tty = port->tty; - if (urb->actual_length) { + if (tty && urb->actual_length) { /* 0x80 bit is error flag */ if ((data[0] & 0x80) == 0) { /* no error on any byte */