diff --git a/drivers/block/rbd.c b/drivers/block/rbd.c index 8f3dcb66c8bace6349417513eae1beec2247a256..5e7234dbd8367008790c90b4ecb718c19b0ef157 100644 --- a/drivers/block/rbd.c +++ b/drivers/block/rbd.c @@ -5397,7 +5397,7 @@ static ssize_t do_rbd_add(struct bus_type *bus, struct rbd_spec *spec = NULL; struct rbd_client *rbdc; bool read_only; - int rc = -ENOMEM; + int rc; if (!try_module_get(THIS_MODULE)) return -ENODEV; @@ -5432,8 +5432,10 @@ static ssize_t do_rbd_add(struct bus_type *bus, } rbd_dev = rbd_dev_create(rbdc, spec, rbd_opts); - if (!rbd_dev) + if (!rbd_dev) { + rc = -ENOMEM; goto err_out_client; + } rbdc = NULL; /* rbd_dev now owns this */ spec = NULL; /* rbd_dev now owns this */ rbd_opts = NULL; /* rbd_dev now owns this */