aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/scsi/megaraid
diff options
context:
space:
mode:
authorKashyap Desai <Kashyap.Desai@lsi.com>2012-07-17 18:20:44 -0700
committerJames Bottomley <JBottomley@Parallels.com>2012-08-22 09:39:25 +0400
commitbd8d6dd43a77bfd2b8fef5b094b9d6095e169dee (patch)
tree72de4e32718559ec28f8ad31b26f4d4b4676a950 /drivers/scsi/megaraid
parent[SCSI] mpt2sas: Fix for Driver oops, when loading driver with max_queue_depth command line option to a very small value (diff)
downloadlinux-dev-bd8d6dd43a77bfd2b8fef5b094b9d6095e169dee.tar.xz
linux-dev-bd8d6dd43a77bfd2b8fef5b094b9d6095e169dee.zip
[SCSI] megaraid_sas: Move poll_aen_lock initializer
The following patch moves the poll_aen_lock initializer from megasas_probe_one() to megasas_init(). This prevents a crash when a user loads the driver and tries to issue a poll() system call on the ioctl interface with no adapters present. Signed-off-by: Kashyap Desai <Kashyap.Desai@lsi.com> Signed-off-by: Adam Radford <aradford@gmail.com> Cc: <stable@vger.kernel.org> Signed-off-by: James Bottomley <JBottomley@Parallels.com>
Diffstat (limited to 'drivers/scsi/megaraid')
-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 dc27598785e5..ed38454228c6 100644
--- a/drivers/scsi/megaraid/megaraid_sas_base.c
+++ b/drivers/scsi/megaraid/megaraid_sas_base.c
@@ -4066,7 +4066,6 @@ megasas_probe_one(struct pci_dev *pdev, const struct pci_device_id *id)
spin_lock_init(&instance->cmd_pool_lock);
spin_lock_init(&instance->hba_lock);
spin_lock_init(&instance->completion_lock);
- spin_lock_init(&poll_aen_lock);
mutex_init(&instance->aen_mutex);
mutex_init(&instance->reset_mutex);
@@ -5392,6 +5391,8 @@ static int __init megasas_init(void)
printk(KERN_INFO "megasas: %s %s\n", MEGASAS_VERSION,
MEGASAS_EXT_VERSION);
+ spin_lock_init(&poll_aen_lock);
+
support_poll_for_event = 2;
support_device_change = 1;