summaryrefslogtreecommitdiffstats
path: root/drivers/pci/hotplug/shpchp_ctrl.c
diff options
context:
space:
mode:
authorJiri Slaby2010-01-06 17:47:56 +0100
committerJesse Barnes2010-02-23 01:16:57 +0100
commit6fcaf17ac7a512227112ac81c0e1a5862bab57a6 (patch)
treea238d8a279f7fbc742b606b58b421ea2ea297403 /drivers/pci/hotplug/shpchp_ctrl.c
parentresource/PCI: mark struct resource as const (diff)
downloadkernel-qcow2-linux-6fcaf17ac7a512227112ac81c0e1a5862bab57a6.tar.gz
kernel-qcow2-linux-6fcaf17ac7a512227112ac81c0e1a5862bab57a6.tar.xz
kernel-qcow2-linux-6fcaf17ac7a512227112ac81c0e1a5862bab57a6.zip
PCI hotplug: fix memory leaks
Stanse found a cut&pasted memory leak in pciehp_queue_pushbutton_work and shpchp_queue_pushbutton_work. info is not freed/assigned on all paths. Fix that. Reviewed-by: Kenji Kaneshige <kaneshige.kenji@jp.fujitsu.com> Signed-off-by: Jiri Slaby <jslaby@suse.cz> Signed-off-by: Jesse Barnes <jbarnes@virtuousgeek.org>
Diffstat (limited to 'drivers/pci/hotplug/shpchp_ctrl.c')
-rw-r--r--drivers/pci/hotplug/shpchp_ctrl.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/pci/hotplug/shpchp_ctrl.c b/drivers/pci/hotplug/shpchp_ctrl.c
index 179b1c1cb99b..3bba0c0888ff 100644
--- a/drivers/pci/hotplug/shpchp_ctrl.c
+++ b/drivers/pci/hotplug/shpchp_ctrl.c
@@ -453,6 +453,7 @@ void shpchp_queue_pushbutton_work(struct work_struct *work)
p_slot->state = POWERON_STATE;
break;
default:
+ kfree(info);
goto out;
}
queue_work(shpchp_wq, &info->work);