aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDan Carpenter <dan.carpenter@oracle.com>2013-04-16 03:44:19 -0400
committerJames Bottomley <JBottomley@Parallels.com>2013-05-02 15:08:46 -0400
commitc64e483ea0a1d7483a5c1ac42ccdf7788eb3ce90 (patch)
treeacaff24170b70ae27f86d62926f73a3c3cc00224
parent883467871c60125765e0674199ef34a9b8d203bd (diff)
[SCSI] megaraid_sas: release lock on error path
We should unlock here before returning. Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com> Acked-by: Adam Radford <aradford@gmail.com> Signed-off-by: James Bottomley <JBottomley@Parallels.com>
-rw-r--r--drivers/scsi/megaraid/megaraid_sas_base.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/drivers/scsi/megaraid/megaraid_sas_base.c b/drivers/scsi/megaraid/megaraid_sas_base.c
index 7c90d57b867e..3a9ddae86f1f 100644
--- a/drivers/scsi/megaraid/megaraid_sas_base.c
+++ b/drivers/scsi/megaraid/megaraid_sas_base.c
@@ -4931,11 +4931,12 @@ static int megasas_mgmt_ioctl_fw(struct file *file, unsigned long arg)
4931 printk(KERN_ERR "megaraid_sas: timed out while" 4931 printk(KERN_ERR "megaraid_sas: timed out while"
4932 "waiting for HBA to recover\n"); 4932 "waiting for HBA to recover\n");
4933 error = -ENODEV; 4933 error = -ENODEV;
4934 goto out_kfree_ioc; 4934 goto out_up;
4935 } 4935 }
4936 spin_unlock_irqrestore(&instance->hba_lock, flags); 4936 spin_unlock_irqrestore(&instance->hba_lock, flags);
4937 4937
4938 error = megasas_mgmt_fw_ioctl(instance, user_ioc, ioc); 4938 error = megasas_mgmt_fw_ioctl(instance, user_ioc, ioc);
4939 out_up:
4939 up(&instance->ioctl_sem); 4940 up(&instance->ioctl_sem);
4940 4941
4941 out_kfree_ioc: 4942 out_kfree_ioc: