diff --git a/drivers/nvme/target/core.c b/drivers/nvme/target/core.c
index 6559d5afa7bf..bf36d2486245 100644
--- a/drivers/nvme/target/core.c
+++ b/drivers/nvme/target/core.c
@@ -264,9 +264,11 @@ int nvmet_ns_enable(struct nvmet_ns *ns)
int ret = 0;
mutex_lock(&subsys->lock);
- if (!list_empty(&ns->dev_link))
+ if (ns->enabled)
goto out_unlock;
+ ns->enabled = true;
+
ns->bdev = blkdev_get_by_path(ns->device_path, FMODE_READ | FMODE_WRITE,
NULL);
if (IS_ERR(ns->bdev)) {
This will leave the enable flag set when an error happenѕ later,
won't it? I'd set it just before dropping the lock.
Yep, will do.
static inline bool nvmet_ns_enabled(struct nvmet_ns *ns)
{
- return !list_empty_careful(&ns->dev_link);
+ return ns->enabled;
and we can probably kill this helper, it's pretty pointless
now.
I will.
--
To unsubscribe from this list: send the line "unsubscribe stable" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html