Hi,
I'm having a problem with the ISP116x driver, just wondered if anyone else
had come across this.
I connect a memory stick into the USB, and copy a large file (say 50MB) onto
it. Part way through the copy I unplug the memory stick. My system then
hangs. If I unplug the memory stick early in the copy it sometimes doesn't
happen, but it always happens if I leave it about 10s.
Are you copying the large file to the raw device, or are you mounting the device and copying the large file to a normal filesystem?
If you are mounting a filesystem for the copy, then why are you unplugging the device while it is still mounted? It's not at all surprising that you end up with a nasty error.
Because it's the sort of thing a user would do. I'm working on a product using embedded linux, with the ability to read and write these USB sticks. Unplugging in the middle of a transfer is just the sort of thing someone is going to do. Hard locking the OS is a slightly drastic way of punishing them for their stupidity!
I'm almost certain the problem is caused by the ISP116x driver, but I'm
completely stuck trying to work out where. When I unplug the memory stick I
see a synchronous call to hci_unlink_urb, which does its job and returns.
About 20s later I see an asynchronous call to the same function. Tracking
back into the kernel, I can see the first call is originating in
storage_disconnect (usb/storage/usb.c), and the second is coming from
command_abort (usb/storage/scsiglue.c).
That pattern of unlinks doesn't make sense. Once storage_disconnect has finished, command_abort should never be called. (Of course, I'm basing this on a 2.4.27 kernel -- 2.4.22 might be different but I don't think so.)
Theres a long delay between the two calls. I was guessing the ISP116x driver was supposed to do something or return something, which then timed out. Can storage_disconnect fail, even if the driver returns (it returns 0, by thre way)?
Andy
------------------------------------------------------- This SF.Net email is sponsored by BEA Weblogic Workshop FREE Java Enterprise J2EE developer tools! Get your free copy of BEA WebLogic Workshop 8.1 today. http://ads.osdn.com/?ad_id=5047&alloc_id=10808&op=click _______________________________________________ [EMAIL PROTECTED] To unsubscribe, use the last form field at: https://lists.sourceforge.net/lists/listinfo/linux-usb-devel