aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/acpi/pci_slot.c
diff options
context:
space:
mode:
authorAlex Chiang <achiang@hp.com>2008-07-17 11:13:32 -0600
committerJesse Barnes <jbarnes@virtuousgeek.org>2008-07-22 11:18:17 -0700
commite4268aad42e9f37d01925022830b16bab3d0d5af (patch)
tree343b114454c8a82cf3d6eb83d601253d63b6d33c /drivers/acpi/pci_slot.c
parent93ded9b8fd42abe2c3607097963d8de6ad9117eb (diff)
downloadkernel_samsung_smdk4412-e4268aad42e9f37d01925022830b16bab3d0d5af.tar.gz
kernel_samsung_smdk4412-e4268aad42e9f37d01925022830b16bab3d0d5af.tar.bz2
kernel_samsung_smdk4412-e4268aad42e9f37d01925022830b16bab3d0d5af.zip
PCI hotplug: fix error path in pci_slot's register_slot
Juha Leppnen noticed that an error path in register_slot() wasn't returning appropriately, leading to a condition where we might access a kfree'ed pointer, so let's fix that. Additionally, fix up the copyright information in the file while we're in there. Signed-off-by: Alex Chiang <achiang@hp.com> Signed-off-by: Jesse Barnes <jbarnes@virtuousgeek.org>
Diffstat (limited to 'drivers/acpi/pci_slot.c')
-rw-r--r--drivers/acpi/pci_slot.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/drivers/acpi/pci_slot.c b/drivers/acpi/pci_slot.c
index b9ab030a52d..dd376f7ad09 100644
--- a/drivers/acpi/pci_slot.c
+++ b/drivers/acpi/pci_slot.c
@@ -6,8 +6,8 @@
* Thanks to Kenji Kaneshige <kaneshige.kenji@jp.fujitsu.com> for code
* review and fixes.
*
- * Copyright (C) 2007 Alex Chiang <achiang@hp.com>
- * Copyright (C) 2007 Hewlett-Packard Development Company, L.P.
+ * Copyright (C) 2007-2008 Hewlett-Packard Development Company, L.P.
+ * Alex Chiang <achiang@hp.com>
*
* This program is free software; you can redistribute it and/or modify it
* under the terms and conditions of the GNU General Public License,
@@ -158,6 +158,7 @@ register_slot(acpi_handle handle, u32 lvl, void *context, void **rv)
if (IS_ERR(pci_slot)) {
err("pci_create_slot returned %ld\n", PTR_ERR(pci_slot));
kfree(slot);
+ return AE_OK;
}
slot->root_handle = parent_context->root_handle;