IPoIB: Fix error path memory leak
authorEli Cohen <eli@mellanox.co.il>
Tue, 21 Aug 2007 15:46:10 +0000 (18:46 +0300)
committerRoland Dreier <rolandd@cisco.com>
Wed, 10 Oct 2007 02:59:06 +0000 (19:59 -0700)
Clean up properly if ib_query_pkey() or ib_query_gid() fail.

Signed-off-by: Eli Cohen <eli@mellanox.co.il>
Signed-off-by: Roland Dreier <rolandd@cisco.com>
drivers/infiniband/ulp/ipoib/ipoib_main.c

index 894b1dcdf3eb31ff0e326aaf9a0b9b793303b8ff..5f948b9a9943644a4bb6eafbb068705af7212b69 100644 (file)
@@ -1083,7 +1083,7 @@ static struct net_device *ipoib_add_port(const char *format,
        if (result) {
                printk(KERN_WARNING "%s: ib_query_pkey port %d failed (ret = %d)\n",
                       hca->name, port, result);
-               goto alloc_mem_failed;
+               goto device_init_failed;
        }
 
        /*
@@ -1099,7 +1099,7 @@ static struct net_device *ipoib_add_port(const char *format,
        if (result) {
                printk(KERN_WARNING "%s: ib_query_gid port %d failed (ret = %d)\n",
                       hca->name, port, result);
-               goto alloc_mem_failed;
+               goto device_init_failed;
        } else
                memcpy(priv->dev->dev_addr + 4, priv->local_gid.raw, sizeof (union ib_gid));