Skip to content

Commit

Permalink
lightnvm: wrong return value and redundant free
Browse files Browse the repository at this point in the history
The return value should be non-zero under error conditions.
Remove nvme_free(dev) to avoid free dev more than once.

Signed-off-by: Wenwei Tao <ww.tao0320@gmail.com>
Signed-off-by: Matias Bjørling <m@bjorling.me>
Signed-off-by: Jens Axboe <axboe@fb.com>
  • Loading branch information
Wenwei Tao authored and Jens Axboe committed Nov 20, 2015
1 parent 54514aa commit 480fc0d
Showing 1 changed file with 2 additions and 4 deletions.
6 changes: 2 additions & 4 deletions drivers/lightnvm/core.c
Original file line number Diff line number Diff line change
Expand Up @@ -222,14 +222,13 @@ static void nvm_free(struct nvm_dev *dev)
static int nvm_init(struct nvm_dev *dev)
{
struct nvmm_type *mt;
int ret = 0;
int ret = -EINVAL;

if (!dev->q || !dev->ops)
return -EINVAL;
return ret;

if (dev->ops->identity(dev->q, &dev->identity)) {
pr_err("nvm: device could not be identified\n");
ret = -EINVAL;
goto err;
}

Expand Down Expand Up @@ -275,7 +274,6 @@ static int nvm_init(struct nvm_dev *dev)
dev->nr_chnls);
return 0;
err:
nvm_free(dev);
pr_err("nvm: failed to initialize nvm\n");
return ret;
}
Expand Down

0 comments on commit 480fc0d

Please sign in to comment.