mirror of https://gitee.com/openkylin/linux.git
USB: uas: fix gcc warning
Streamline control flow so it is easier for gcc to follow which paths can be taken and which can't. Fixes "warning: 'cmdinfo' may be used uninitialized in this function" Signed-off-by: Gerd Hoffmann <kraxel@redhat.com> Reported-by: Fengguang Wu <fengguang.wu@intel.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
parent
1994ff405e
commit
e0423dee89
|
@ -249,16 +249,18 @@ static void uas_stat_cmplt(struct urb *urb)
|
|||
cmnd = devinfo->cmnd;
|
||||
else
|
||||
cmnd = scsi_host_find_tag(shost, tag - 1);
|
||||
|
||||
if (!cmnd) {
|
||||
if (iu->iu_id != IU_ID_RESPONSE) {
|
||||
usb_free_urb(urb);
|
||||
spin_unlock_irqrestore(&devinfo->lock, flags);
|
||||
return;
|
||||
if (iu->iu_id == IU_ID_RESPONSE) {
|
||||
/* store results for uas_eh_task_mgmt() */
|
||||
memcpy(&devinfo->response, iu, sizeof(devinfo->response));
|
||||
}
|
||||
} else {
|
||||
cmdinfo = (void *)&cmnd->SCp;
|
||||
usb_free_urb(urb);
|
||||
spin_unlock_irqrestore(&devinfo->lock, flags);
|
||||
return;
|
||||
}
|
||||
|
||||
cmdinfo = (void *)&cmnd->SCp;
|
||||
switch (iu->iu_id) {
|
||||
case IU_ID_STATUS:
|
||||
if (devinfo->cmnd == cmnd)
|
||||
|
@ -292,10 +294,6 @@ static void uas_stat_cmplt(struct urb *urb)
|
|||
case IU_ID_WRITE_READY:
|
||||
uas_xfer_data(urb, cmnd, SUBMIT_DATA_OUT_URB);
|
||||
break;
|
||||
case IU_ID_RESPONSE:
|
||||
/* store results for uas_eh_task_mgmt() */
|
||||
memcpy(&devinfo->response, iu, sizeof(devinfo->response));
|
||||
break;
|
||||
default:
|
||||
scmd_printk(KERN_ERR, cmnd,
|
||||
"Bogus IU (%d) received on status pipe\n", iu->iu_id);
|
||||
|
|
Loading…
Reference in New Issue