|
|
0dc130 |
namespace-action: Drop zero namespace checks.
|
|
|
0dc130 |
|
|
|
0dc130 |
BZ:
|
|
|
0dc130 |
Brew:
|
|
|
0dc130 |
|
|
|
0dc130 |
commit 80e0d88c3098bd419e26146a8cb3b693fdd06417
|
|
|
0dc130 |
Author: Santosh Sivaraj <santosh@fossix.org>
|
|
|
0dc130 |
Date: Wed Jan 6 14:17:42 2021 +0100
|
|
|
0dc130 |
|
|
|
0dc130 |
namespace-action: Drop zero namespace checks.
|
|
|
0dc130 |
|
|
|
0dc130 |
With seed namespaces catched early on these checks for sizes in enable
|
|
|
0dc130 |
and destroy namespace code path are not needed.
|
|
|
0dc130 |
|
|
|
0dc130 |
Reverts commit b9cb03f6d5a8 ("ndctl/namespace: Fix enable-namespace
|
|
|
0dc130 |
error for seed namespaces")
|
|
|
0dc130 |
|
|
|
0dc130 |
Reverts commit e01045e58ad5 ("ndctl/namespace: Fix destroy-namespace
|
|
|
0dc130 |
accounting relative to seed devices")
|
|
|
0dc130 |
|
|
|
0dc130 |
Link: https://patchwork.kernel.org/patch/11739975/
|
|
|
0dc130 |
Link: https://lore.kernel.org/r/eb4bc7885708fa13e3d37286bc4a4219b1e4e5b6.1609938610.git.msuchanek@suse.de
|
|
|
0dc130 |
Fixes: b9cb03f6d5a8 ("ndctl/namespace: Fix enable-namespace error for seed namespaces")
|
|
|
0dc130 |
Fixes: e01045e58ad5 ("ndctl/namespace: Fix destroy-namespace accounting relative to seed devices")
|
|
|
0dc130 |
Signed-off-by: Santosh Sivaraj <santosh@fossix.org>
|
|
|
0dc130 |
[rebased on top of the previous patches]
|
|
|
0dc130 |
Signed-off-by: Michal Suchanek <msuchanek@suse.de>
|
|
|
0dc130 |
Signed-off-by: Vishal Verma <vishal.l.verma@intel.com>
|
|
|
0dc130 |
|
|
|
0dc130 |
diff --git a/ndctl/lib/libndctl.c b/ndctl/lib/libndctl.c
|
|
|
0dc130 |
index 536e142..87f60b9 100644
|
|
|
0dc130 |
--- a/ndctl/lib/libndctl.c
|
|
|
0dc130 |
+++ b/ndctl/lib/libndctl.c
|
|
|
0dc130 |
@@ -4531,16 +4531,11 @@ NDCTL_EXPORT int ndctl_namespace_enable(struct ndctl_namespace *ndns)
|
|
|
0dc130 |
const char *devname = ndctl_namespace_get_devname(ndns);
|
|
|
0dc130 |
struct ndctl_ctx *ctx = ndctl_namespace_get_ctx(ndns);
|
|
|
0dc130 |
struct ndctl_region *region = ndns->region;
|
|
|
0dc130 |
- unsigned long long size = ndctl_namespace_get_size(ndns);
|
|
|
0dc130 |
int rc;
|
|
|
0dc130 |
|
|
|
0dc130 |
if (ndctl_namespace_is_enabled(ndns))
|
|
|
0dc130 |
return 0;
|
|
|
0dc130 |
|
|
|
0dc130 |
- /* Don't try to enable idle namespace (no capacity allocated) */
|
|
|
0dc130 |
- if (size == 0)
|
|
|
0dc130 |
- return -ENXIO;
|
|
|
0dc130 |
-
|
|
|
0dc130 |
rc = ndctl_bind(ctx, ndns->module, devname);
|
|
|
0dc130 |
|
|
|
0dc130 |
/*
|
|
|
0dc130 |
diff --git a/ndctl/namespace.c b/ndctl/namespace.c
|
|
|
0dc130 |
index cd822b3..c67c086 100644
|
|
|
0dc130 |
--- a/ndctl/namespace.c
|
|
|
0dc130 |
+++ b/ndctl/namespace.c
|
|
|
0dc130 |
@@ -1164,15 +1164,12 @@ static int namespace_destroy(struct ndctl_region *region,
|
|
|
0dc130 |
struct ndctl_namespace *ndns)
|
|
|
0dc130 |
{
|
|
|
0dc130 |
const char *devname = ndctl_namespace_get_devname(ndns);
|
|
|
0dc130 |
- unsigned long long size;
|
|
|
0dc130 |
int rc;
|
|
|
0dc130 |
|
|
|
0dc130 |
rc = namespace_prep_reconfig(region, ndns);
|
|
|
0dc130 |
if (rc < 0)
|
|
|
0dc130 |
return rc;
|
|
|
0dc130 |
|
|
|
0dc130 |
- size = ndctl_namespace_get_size(ndns);
|
|
|
0dc130 |
-
|
|
|
0dc130 |
/* Labeled namespace, destroy label / allocation */
|
|
|
0dc130 |
if (rc == 2) {
|
|
|
0dc130 |
rc = ndctl_namespace_delete(ndns);
|
|
|
0dc130 |
@@ -1180,13 +1177,6 @@ static int namespace_destroy(struct ndctl_region *region,
|
|
|
0dc130 |
debug("%s: failed to reclaim\n", devname);
|
|
|
0dc130 |
}
|
|
|
0dc130 |
|
|
|
0dc130 |
- /*
|
|
|
0dc130 |
- * Don't report a destroyed namespace when no capacity was
|
|
|
0dc130 |
- * allocated.
|
|
|
0dc130 |
- */
|
|
|
0dc130 |
- if (size == 0 && rc == 0)
|
|
|
0dc130 |
- rc = 1;
|
|
|
0dc130 |
-
|
|
|
0dc130 |
return rc;
|
|
|
0dc130 |
}
|
|
|
0dc130 |
|