Am Montag, 3. August 2009 15:22:34 schrieb Alex Riesen: > On Mon, Aug 3, 2009 at 15:04, Oliver Neukum<oliver@xxxxxxxxxx> wrote: > > Am Montag, 3. August 2009 11:17:05 schrieb Alex Riesen: > >> 466 ep = (usb_pipein(acm->rx_endpoint) ? acm->dev->ep_in : > >> acm->dev->ep_out) > >> 467 [usb_pipeendpoint(acm->rx_endpoint)]; > >> 468 if (usb_endpoint_xfer_int(&ep->desc)) > >> > >> So it looks like ep is NULL (usb_endpoint_xfer_int accesses > >> desc.bmAttributes, which is 3 bytes off the beginning of struct > >> usb_host_endpoint (desc being the first field in usb_host_endpoint). > > > > This tells you that the device has been disconnected. The question > > is not why this function fails, but why it is called even though the > > device has been disconnected. > > Cool. How can I help? You have to put printks in acm_disconnect to find out where it returns to early or if it is not called at all. Regards Oliver -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html