iucv: fix memory leak in cpu hotplug error path.
authorAkinobu Mita <akinobu.mita@gmail.com>
Tue, 15 Jul 2008 09:09:53 +0000 (02:09 -0700)
committerDavid S. Miller <davem@davemloft.net>
Tue, 15 Jul 2008 09:09:53 +0000 (02:09 -0700)
Fix memory leak in error path in CPU_UP_PREPARE notifier.

Signed-off-by: Akinobu Mita <akinobu.mita@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
net/iucv/iucv.c

index 531a206ce7a6ee78e4b3e7b00faaa10a7a8809bd..d8e0635aace0198e9267436e3a86f83977e6f3ad 100644 (file)
@@ -567,8 +567,11 @@ static int __cpuinit iucv_cpu_notify(struct notifier_block *self,
                        return NOTIFY_BAD;
                iucv_param[cpu] = kmalloc_node(sizeof(union iucv_param),
                                     GFP_KERNEL|GFP_DMA, cpu_to_node(cpu));
-               if (!iucv_param[cpu])
+               if (!iucv_param[cpu]) {
+                       kfree(iucv_irq_data[cpu]);
+                       iucv_irq_data[cpu] = NULL;
                        return NOTIFY_BAD;
+               }
                break;
        case CPU_UP_CANCELED:
        case CPU_UP_CANCELED_FROZEN: