Dave Mielke wrote: > Under what circumstances should usbfs code, after having received a signal, > expect to not be able to reap a URB, and how should it interpret this > situation? I would expect ioctl(fd, IOCTL_USBFS_REAPURBNDELAY, &urb) to either return -1 with errno = ENODEV, or to return 0 with urb->status = ESHUTDOWN. > In this situation, though, wouldn't the URB still be reapable with > its status set to -ENOENT? Yes, I think so. > 518: if (as->status < 0 && as->bulk_addr && as->status != -ECONNRESET && > 519: as->status != -ENOENT) > 520: cancel_bulk_urbs(ps, as->bulk_addr); > > Whatever this code is for, it looks like it's specifically not > being executed if the error is -ENOENT. What happens if you ioctl(fd, IOCTL_USBFS_DISCARDURB, ) instead of REAP? //Peter -- 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