diff options
-rw-r--r-- | drivers/usb/storage/uas.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/drivers/usb/storage/uas.c b/drivers/usb/storage/uas.c index ab66365adb96..1d326c5e6dea 100644 --- a/drivers/usb/storage/uas.c +++ b/drivers/usb/storage/uas.c | |||
@@ -611,7 +611,7 @@ static int uas_eh_task_mgmt(struct scsi_cmnd *cmnd, | |||
611 | { | 611 | { |
612 | struct Scsi_Host *shost = cmnd->device->host; | 612 | struct Scsi_Host *shost = cmnd->device->host; |
613 | struct uas_dev_info *devinfo = (void *)shost->hostdata[0]; | 613 | struct uas_dev_info *devinfo = (void *)shost->hostdata[0]; |
614 | u16 tag = 9999; /* FIXME */ | 614 | u16 tag = devinfo->qdepth - 1; |
615 | 615 | ||
616 | memset(&devinfo->response, 0, sizeof(devinfo->response)); | 616 | memset(&devinfo->response, 0, sizeof(devinfo->response)); |
617 | if (uas_submit_sense_urb(shost, GFP_NOIO, tag)) { | 617 | if (uas_submit_sense_urb(shost, GFP_NOIO, tag)) { |
@@ -701,7 +701,7 @@ static int uas_slave_configure(struct scsi_device *sdev) | |||
701 | { | 701 | { |
702 | struct uas_dev_info *devinfo = sdev->hostdata; | 702 | struct uas_dev_info *devinfo = sdev->hostdata; |
703 | scsi_set_tag_type(sdev, MSG_ORDERED_TAG); | 703 | scsi_set_tag_type(sdev, MSG_ORDERED_TAG); |
704 | scsi_activate_tcq(sdev, devinfo->qdepth - 2); | 704 | scsi_activate_tcq(sdev, devinfo->qdepth - 3); |
705 | return 0; | 705 | return 0; |
706 | } | 706 | } |
707 | 707 | ||
@@ -880,7 +880,7 @@ static int uas_probe(struct usb_interface *intf, const struct usb_device_id *id) | |||
880 | init_usb_anchor(&devinfo->data_urbs); | 880 | init_usb_anchor(&devinfo->data_urbs); |
881 | uas_configure_endpoints(devinfo); | 881 | uas_configure_endpoints(devinfo); |
882 | 882 | ||
883 | result = scsi_init_shared_tag_map(shost, devinfo->qdepth - 2); | 883 | result = scsi_init_shared_tag_map(shost, devinfo->qdepth - 3); |
884 | if (result) | 884 | if (result) |
885 | goto free; | 885 | goto free; |
886 | 886 | ||