IB/IPoIB: Fix error code in ipoib_add_port()
authorDan Carpenter <dan.carpenter@oracle.com>
Thu, 13 Jul 2017 07:45:48 +0000 (10:45 +0300)
committerDoug Ledford <dledford@redhat.com>
Thu, 20 Jul 2017 15:20:49 +0000 (11:20 -0400)
We accidentally don't see the error code on some of these error paths.
It means we return ERR_PTR(0) which is NULL and it results in a NULL
dereference in the caller.

This bug dates to pre-git days.

Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com>
Reviewed-by: Leon Romanovsky <leonro@mellanox.com>
Signed-off-by: Doug Ledford <dledford@redhat.com>
drivers/infiniband/ulp/ipoib/ipoib_main.c

index 70dacaf9044ecdd7b6c0be0ba20cd913cb66a4d4..4ce315c92b480fa705c30b33ffd7253b4cfded3b 100644 (file)
@@ -2239,6 +2239,7 @@ static struct net_device *ipoib_add_port(const char *format,
                goto register_failed;
        }
 
+       result = -ENOMEM;
        if (ipoib_cm_add_mode_attr(priv->dev))
                goto sysfs_failed;
        if (ipoib_add_pkey_attr(priv->dev))