anitazha / rpms / ndctl

Forked from rpms/ndctl a year ago
Clone

Blame SOURCES/0030-namespace-action-Drop-zero-namespace-checks.patch

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