From: Hans de Goede Date: Sat, 13 Sep 2014 10:26:39 +0000 (+0200) Subject: uas: Remove cmnd reference from the cmd urb X-Git-Url: https://git.karo-electronics.de/?a=commitdiff_plain;h=b6823c51fcd82e993275f5403e120279232ecaec;p=linux-beck.git uas: Remove cmnd reference from the cmd urb It is not strictly necessary for the cmd urb to have a reference to the cmnd, and without this reference it becomes easier to drop all references to a cmnd on an abort. Signed-off-by: Hans de Goede Signed-off-by: Greg Kroah-Hartman --- diff --git a/drivers/usb/storage/uas.c b/drivers/usb/storage/uas.c index 06c3eaede2ac..8421dcd8ed44 100644 --- a/drivers/usb/storage/uas.c +++ b/drivers/usb/storage/uas.c @@ -428,12 +428,9 @@ out: static void uas_cmd_cmplt(struct urb *urb) { - struct scsi_cmnd *cmnd = urb->context; + if (urb->status) + dev_err(&urb->dev->dev, "cmd cmplt err %d\n", urb->status); - if (urb->status) { - uas_log_cmd_state(cmnd, __func__); - scmd_printk(KERN_ERR, cmnd, "cmd cmplt err %d\n", urb->status); - } usb_free_urb(urb); } @@ -511,7 +508,7 @@ static struct urb *uas_alloc_cmd_urb(struct uas_dev_info *devinfo, gfp_t gfp, memcpy(iu->cdb, cmnd->cmnd, cmnd->cmd_len); usb_fill_bulk_urb(urb, udev, devinfo->cmd_pipe, iu, sizeof(*iu) + len, - uas_cmd_cmplt, cmnd); + uas_cmd_cmplt, NULL); urb->transfer_flags |= URB_FREE_BUFFER; out: return urb;