]> Git Repo - linux.git/commitdiff
USB: uas: fix locking
authorGerd Hoffmann <[email protected]>
Wed, 26 Sep 2012 08:28:58 +0000 (10:28 +0200)
committerGreg Kroah-Hartman <[email protected]>
Wed, 26 Sep 2012 21:13:19 +0000 (14:13 -0700)
Forgot to unlock in the uas_eh_task_mgmt error paths.

Signed-off-by: Gerd Hoffmann <[email protected]>
Reported-by: Fengguang Wu <[email protected]>
Signed-off-by: Greg Kroah-Hartman <[email protected]>
drivers/usb/storage/uas.c

index 15789097edd6fcdaa1a64609aa11c3d34b9faf5d..4218701bb45e913fe71219cd54ae1e21af3c712f 100644 (file)
@@ -649,12 +649,14 @@ static int uas_eh_task_mgmt(struct scsi_cmnd *cmnd,
                shost_printk(KERN_INFO, shost,
                             "%s: %s: submit sense urb failed\n",
                             __func__, fname);
+               spin_unlock_irqrestore(&devinfo->lock, flags);
                return FAILED;
        }
        if (uas_submit_task_urb(cmnd, GFP_ATOMIC, function, tag)) {
                shost_printk(KERN_INFO, shost,
                             "%s: %s: submit task mgmt urb failed\n",
                             __func__, fname);
+               spin_unlock_irqrestore(&devinfo->lock, flags);
                return FAILED;
        }
        spin_unlock_irqrestore(&devinfo->lock, flags);
This page took 0.053676 seconds and 4 git commands to generate.