[PATCH] Remove extra goto label from nvmet_ns_enable

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Currently nvmet_ns_enable has two labels viz. out_unlock and
out_dev_put, and the reverse call from out_dev_put to out_unlock
is little bit confusing. We could simplify it by calling
nvmet_ns_dev_disable before. This would eliminate need for
2nd out_dev_put label.

Also, this function already initializes ret variable to 0,
so there is no need to again initialize it to 0 before 
out_unlock, hence removing it.

Signed-off-by: Milan P. Gandhi <mgandhi@xxxxxxxxxx>
---
 drivers/nvme/target/core.c | 12 +++++-------
 1 file changed, 5 insertions(+), 7 deletions(-)

diff --git a/drivers/nvme/target/core.c b/drivers/nvme/target/core.c
index 9838103f2d62..b40fb6d724b4 100644
--- a/drivers/nvme/target/core.c
+++ b/drivers/nvme/target/core.c
@@ -346,9 +346,10 @@ int nvmet_ns_enable(struct nvmet_ns *ns)
 
 	ret = percpu_ref_init(&ns->ref, nvmet_destroy_namespace,
 				0, GFP_KERNEL);
-	if (ret)
-		goto out_dev_put;
-
+	if (ret) {
+		nvmet_ns_dev_disable(ns);
+		goto out_unlock;
+	}
 	if (ns->nsid > subsys->max_nsid)
 		subsys->max_nsid = ns->nsid;
 
@@ -372,13 +373,10 @@ int nvmet_ns_enable(struct nvmet_ns *ns)
 
 	nvmet_ns_changed(subsys, ns->nsid);
 	ns->enabled = true;
-	ret = 0;
+
 out_unlock:
 	mutex_unlock(&subsys->lock);
 	return ret;
-out_dev_put:
-	nvmet_ns_dev_disable(ns);
-	goto out_unlock;
 }
 
 void nvmet_ns_disable(struct nvmet_ns *ns)
-- 
2.14.3




[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [SCSI Target Devel]     [Linux SCSI Target Infrastructure]     [Kernel Newbies]     [IDE]     [Security]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux ATA RAID]     [Linux IIO]     [Samba]     [Device Mapper]

  Powered by Linux