Re: debugging oops after disconnecting Nexio USB touchscreen
From: Alan Stern
Date: Fri Dec 04 2009 - 10:47:43 EST
On Fri, 4 Dec 2009, Ondrej Zary wrote:
> > Furthermore, the patch shows that the second-to-last argument to
> > usb_fill_bulk_urb() -- the completion function -- is NULL. That is
> > strictly illegal and it should have caused an oops as soon as the URB
> > was used.
>
> Thanks for catching this. usbmon showed no ACK packets so it didn't work
> at all. The device did not care. It started to work after adding a
> complete function.
What started to work? If you don't send any ACK packets, it doesn't
make any difference whether the completion function is set or not.
> Seems that -EPIPE is returned only after the device is disconnected. Adding a
> check for -EPIPE to usbtouch_irq() and not submitting the urb again seems to
> fix the problem!
Fix which problem? The unending resubmissions or the oops in ehci-hcd?
BTW, does the touchscreen run at high speed or at full speed?
Alan Stern
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/