aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/scsi/megaraid
diff options
context:
space:
mode:
authorKashyap Desai <Kashyap.Desai@lsi.com>2012-07-17 18:20:44 -0700
committerBen Hutchings <ben@decadent.org.uk>2012-09-19 15:04:28 +0100
commitfb225ce36716c46b10c68ab25c9f8c97563bd895 (patch)
treef802053d7cd7cde48ec69ed6265d6096041caac7 /drivers/scsi/megaraid
parentf64c045ad2f37a56f2c9ab9cfe662b2e797bb37e (diff)
downloadkernel_samsung_smdk4412-fb225ce36716c46b10c68ab25c9f8c97563bd895.zip
kernel_samsung_smdk4412-fb225ce36716c46b10c68ab25c9f8c97563bd895.tar.gz
kernel_samsung_smdk4412-fb225ce36716c46b10c68ab25c9f8c97563bd895.tar.bz2
megaraid_sas: Move poll_aen_lock initializer
commit bd8d6dd43a77bfd2b8fef5b094b9d6095e169dee upstream. 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> Signed-off-by: James Bottomley <JBottomley@Parallels.com> Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
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 29a994f..7c471eb 100644
--- a/drivers/scsi/megaraid/megaraid_sas_base.c
+++ b/drivers/scsi/megaraid/megaraid_sas_base.c
@@ -4125,7 +4125,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);
@@ -5520,6 +5519,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;