diff options
author | Keith Busch <kbusch@kernel.org> | 2020-04-09 09:09:00 -0700 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2021-03-17 17:03:57 +0100 |
commit | 4e2156c0d37bba4afafaa92cf359a36ad49bf63e (patch) | |
tree | 98f3ba552a7e5d7b4de45b1542ced6a43997b2e4 /drivers/nvme | |
parent | eb565f052b3eb57d3a468bf46033f5c415a3513e (diff) |
nvme: release namespace head reference on error
commit ac262508daa88fb12c5dc53cf30bde163f9f26c9 upstream.
If a namespace identification does not match the subsystem's head for
that NSID, release the reference that was taken when the matching head
was initially found.
Signed-off-by: Keith Busch <kbusch@kernel.org>
Reviewed-by: Sagi Grimberg <sagi@grimberg.me>
Signed-off-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'drivers/nvme')
-rw-r--r-- | drivers/nvme/host/core.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/nvme/host/core.c b/drivers/nvme/host/core.c index 95d933bfd15b..e4e24e7bf462 100644 --- a/drivers/nvme/host/core.c +++ b/drivers/nvme/host/core.c @@ -3467,6 +3467,7 @@ static int nvme_init_ns_head(struct nvme_ns *ns, unsigned nsid, "IDs don't match for shared namespace %d\n", nsid); ret = -EINVAL; + nvme_put_ns_head(head); goto out_unlock; } } |