Hi Matthew, I've been working on getting the cancellation error handling paths up to snuff in the USB attached SCSI (UAS) driver. The code seems to work (abort task was tested several times before I discovered and fixed a bug in patch 2 for untagged commands). Now I need your help with the SCSI and UAS specific questions I have, especially in patches 4, 5 and 7. You probably want to look over the patches as well. Paul, thanks for your advice about SRCU. Can you look over patch 8 if you have the time? Alan, you suggested (some time ago) that in order to handle the issue where the URBs must be canceled before streams are disabled, we should set the .soft_unbind flag: http://marc.info/?l=linux-usb&m=129424118118561&w=2 I've implemented that, and it seems to be working correctly, but could you take a glance at patch 9 to make sure I haven't missed anything? The full patchset is on my uas branch, along with some xHCI debugging changes that I need to merge separately: git://git.kernel.org/pub/scm/linux/kernel/git/sarah/xhci.git uas Sarah Sharp (9): UAS: Re-add workqueue items if submission fails. UAS: Use unique tags on non-streams devices. UAS: Free status URB when we can't find the SCSI tag. UAS: Handle cancellation of status URB. UAS: Introduce an URB anchor for command cancellation. UAS: Kill anchored URBs for canceled SCSI commands. UAS: Issue ABORT TASK for canceled SCSI commands. UAS: Cancel pending URBs and free streams in pre-reset. UAS: Free streams during USB disconnect. drivers/usb/host/xhci-mem.c | 14 -- drivers/usb/host/xhci-ring.c | 70 +++----- drivers/usb/storage/uas.c | 430 ++++++++++++++++++++++++++++++++++++++---- 3 files changed, 419 insertions(+), 95 deletions(-) -- 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