--- x/drivers/usb/core/devio.c +++ y/drivers/usb/core/devio.c @@ -612,7 +612,7 @@ __acquires(ps->lock) urb = as->urb; usb_get_urb(urb); spin_unlock(&ps->lock); /* Allow completions */ - usb_unlink_urb(urb); + usb_kill_urb(urb); usb_put_urb(urb); spin_lock(&ps->lock); goto rescan;