linux-btrfs.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v2] btrfs-progs: qgroup: Remove support for specifying inherit type
@ 2017-12-20  5:19 Qu Wenruo
  2017-12-20  7:47 ` Nikolay Borisov
  2018-07-21  7:43 ` Lu Fengqi
  0 siblings, 2 replies; 3+ messages in thread
From: Qu Wenruo @ 2017-12-20  5:19 UTC (permalink / raw)
  To: linux-btrfs; +Cc: misono.tomohiro

Since kernel is deprecating the support for specifying inherit type,
remove the support in btrfs-progs too.

Thankfully, the options for qgroup inheritance is hidden and not
documented, so user shouldn't be affected at all.

Signed-off-by: Qu Wenruo <wqu@suse.com>
---
changelog:
v2:
  Remove the "c:" option in getopt(), spotted by Misono.
---
 cmds-subvolume.c | 25 ++-----------------------
 qgroup.c         | 42 ------------------------------------------
 qgroup.h         |  3 ---
 3 files changed, 2 insertions(+), 68 deletions(-)

diff --git a/cmds-subvolume.c b/cmds-subvolume.c
index dc626a6495e5..f8e34bc842b3 100644
--- a/cmds-subvolume.c
+++ b/cmds-subvolume.c
@@ -129,18 +129,11 @@ static int cmd_subvol_create(int argc, char **argv)
 	DIR	*dirstream = NULL;
 
 	while (1) {
-		int c = getopt(argc, argv, "c:i:");
+		int c = getopt(argc, argv, "i:");
 		if (c < 0)
 			break;
 
 		switch (c) {
-		case 'c':
-			res = qgroup_inherit_add_copy(&inherit, optarg, 0);
-			if (res) {
-				retval = res;
-				goto out;
-			}
-			break;
 		case 'i':
 			res = qgroup_inherit_add_group(&inherit, optarg);
 			if (res) {
@@ -665,18 +658,11 @@ static int cmd_subvol_snapshot(int argc, char **argv)
 
 	memset(&args, 0, sizeof(args));
 	while (1) {
-		int c = getopt(argc, argv, "c:i:r");
+		int c = getopt(argc, argv, "i:r");
 		if (c < 0)
 			break;
 
 		switch (c) {
-		case 'c':
-			res = qgroup_inherit_add_copy(&inherit, optarg, 0);
-			if (res) {
-				retval = res;
-				goto out;
-			}
-			break;
 		case 'i':
 			res = qgroup_inherit_add_group(&inherit, optarg);
 			if (res) {
@@ -687,13 +673,6 @@ static int cmd_subvol_snapshot(int argc, char **argv)
 		case 'r':
 			readonly = 1;
 			break;
-		case 'x':
-			res = qgroup_inherit_add_copy(&inherit, optarg, 1);
-			if (res) {
-				retval = res;
-				goto out;
-			}
-			break;
 		default:
 			usage(cmd_subvol_snapshot_usage);
 		}
diff --git a/qgroup.c b/qgroup.c
index 156825fd431d..e9158a260251 100644
--- a/qgroup.c
+++ b/qgroup.c
@@ -1310,45 +1310,3 @@ int qgroup_inherit_add_group(struct btrfs_qgroup_inherit **inherit, char *arg)
 
 	return 0;
 }
-
-int qgroup_inherit_add_copy(struct btrfs_qgroup_inherit **inherit, char *arg,
-			    int type)
-{
-	int ret;
-	u64 qgroup_src;
-	u64 qgroup_dst;
-	char *p;
-	int pos = 0;
-
-	p = strchr(arg, ':');
-	if (!p) {
-bad:
-		error("invalid copy specification, missing separator :");
-		return -EINVAL;
-	}
-	*p = 0;
-	qgroup_src = parse_qgroupid(arg);
-	qgroup_dst = parse_qgroupid(p + 1);
-	*p = ':';
-
-	if (!qgroup_src || !qgroup_dst)
-		goto bad;
-
-	if (*inherit)
-		pos = (*inherit)->num_qgroups +
-		      (*inherit)->num_ref_copies * 2 * type;
-
-	ret = qgroup_inherit_realloc(inherit, 2, pos);
-	if (ret)
-		return ret;
-
-	(*inherit)->qgroups[pos++] = qgroup_src;
-	(*inherit)->qgroups[pos++] = qgroup_dst;
-
-	if (!type)
-		++(*inherit)->num_ref_copies;
-	else
-		++(*inherit)->num_excl_copies;
-
-	return 0;
-}
diff --git a/qgroup.h b/qgroup.h
index 875fbdf37f5f..3fc57123dc2d 100644
--- a/qgroup.h
+++ b/qgroup.h
@@ -92,7 +92,4 @@ int btrfs_qgroup_setup_comparer(struct btrfs_qgroup_comparer_set **comp_set,
 				int is_descending);
 int qgroup_inherit_size(struct btrfs_qgroup_inherit *p);
 int qgroup_inherit_add_group(struct btrfs_qgroup_inherit **inherit, char *arg);
-int qgroup_inherit_add_copy(struct btrfs_qgroup_inherit **inherit, char *arg,
-			    int type);
-
 #endif
-- 
2.15.1


^ permalink raw reply related	[flat|nested] 3+ messages in thread

* Re: [PATCH v2] btrfs-progs: qgroup: Remove support for specifying inherit type
  2017-12-20  5:19 [PATCH v2] btrfs-progs: qgroup: Remove support for specifying inherit type Qu Wenruo
@ 2017-12-20  7:47 ` Nikolay Borisov
  2018-07-21  7:43 ` Lu Fengqi
  1 sibling, 0 replies; 3+ messages in thread
From: Nikolay Borisov @ 2017-12-20  7:47 UTC (permalink / raw)
  To: Qu Wenruo, linux-btrfs; +Cc: misono.tomohiro



On 20.12.2017 07:19, Qu Wenruo wrote:
> Since kernel is deprecating the support for specifying inherit type,
> remove the support in btrfs-progs too.
> 
> Thankfully, the options for qgroup inheritance is hidden and not
> documented, so user shouldn't be affected at all.
> 
> Signed-off-by: Qu Wenruo <wqu@suse.com>

Reviewed-by: Nikolay Borisov <nborisov@suse.com>

> ---
> changelog:
> v2:
>   Remove the "c:" option in getopt(), spotted by Misono.
> ---
>  cmds-subvolume.c | 25 ++-----------------------
>  qgroup.c         | 42 ------------------------------------------
>  qgroup.h         |  3 ---
>  3 files changed, 2 insertions(+), 68 deletions(-)
> 
> diff --git a/cmds-subvolume.c b/cmds-subvolume.c
> index dc626a6495e5..f8e34bc842b3 100644
> --- a/cmds-subvolume.c
> +++ b/cmds-subvolume.c
> @@ -129,18 +129,11 @@ static int cmd_subvol_create(int argc, char **argv)
>  	DIR	*dirstream = NULL;
>  
>  	while (1) {
> -		int c = getopt(argc, argv, "c:i:");
> +		int c = getopt(argc, argv, "i:");
>  		if (c < 0)
>  			break;
>  
>  		switch (c) {
> -		case 'c':
> -			res = qgroup_inherit_add_copy(&inherit, optarg, 0);
> -			if (res) {
> -				retval = res;
> -				goto out;
> -			}
> -			break;
>  		case 'i':
>  			res = qgroup_inherit_add_group(&inherit, optarg);
>  			if (res) {
> @@ -665,18 +658,11 @@ static int cmd_subvol_snapshot(int argc, char **argv)
>  
>  	memset(&args, 0, sizeof(args));
>  	while (1) {
> -		int c = getopt(argc, argv, "c:i:r");
> +		int c = getopt(argc, argv, "i:r");
>  		if (c < 0)
>  			break;
>  
>  		switch (c) {
> -		case 'c':
> -			res = qgroup_inherit_add_copy(&inherit, optarg, 0);
> -			if (res) {
> -				retval = res;
> -				goto out;
> -			}
> -			break;
>  		case 'i':
>  			res = qgroup_inherit_add_group(&inherit, optarg);
>  			if (res) {
> @@ -687,13 +673,6 @@ static int cmd_subvol_snapshot(int argc, char **argv)
>  		case 'r':
>  			readonly = 1;
>  			break;
> -		case 'x':
> -			res = qgroup_inherit_add_copy(&inherit, optarg, 1);
> -			if (res) {
> -				retval = res;
> -				goto out;
> -			}
> -			break;
>  		default:
>  			usage(cmd_subvol_snapshot_usage);
>  		}
> diff --git a/qgroup.c b/qgroup.c
> index 156825fd431d..e9158a260251 100644
> --- a/qgroup.c
> +++ b/qgroup.c
> @@ -1310,45 +1310,3 @@ int qgroup_inherit_add_group(struct btrfs_qgroup_inherit **inherit, char *arg)
>  
>  	return 0;
>  }
> -
> -int qgroup_inherit_add_copy(struct btrfs_qgroup_inherit **inherit, char *arg,
> -			    int type)
> -{
> -	int ret;
> -	u64 qgroup_src;
> -	u64 qgroup_dst;
> -	char *p;
> -	int pos = 0;
> -
> -	p = strchr(arg, ':');
> -	if (!p) {
> -bad:
> -		error("invalid copy specification, missing separator :");
> -		return -EINVAL;
> -	}
> -	*p = 0;
> -	qgroup_src = parse_qgroupid(arg);
> -	qgroup_dst = parse_qgroupid(p + 1);
> -	*p = ':';
> -
> -	if (!qgroup_src || !qgroup_dst)
> -		goto bad;
> -
> -	if (*inherit)
> -		pos = (*inherit)->num_qgroups +
> -		      (*inherit)->num_ref_copies * 2 * type;
> -
> -	ret = qgroup_inherit_realloc(inherit, 2, pos);
> -	if (ret)
> -		return ret;
> -
> -	(*inherit)->qgroups[pos++] = qgroup_src;
> -	(*inherit)->qgroups[pos++] = qgroup_dst;
> -
> -	if (!type)
> -		++(*inherit)->num_ref_copies;
> -	else
> -		++(*inherit)->num_excl_copies;
> -
> -	return 0;
> -}
> diff --git a/qgroup.h b/qgroup.h
> index 875fbdf37f5f..3fc57123dc2d 100644
> --- a/qgroup.h
> +++ b/qgroup.h
> @@ -92,7 +92,4 @@ int btrfs_qgroup_setup_comparer(struct btrfs_qgroup_comparer_set **comp_set,
>  				int is_descending);
>  int qgroup_inherit_size(struct btrfs_qgroup_inherit *p);
>  int qgroup_inherit_add_group(struct btrfs_qgroup_inherit **inherit, char *arg);
> -int qgroup_inherit_add_copy(struct btrfs_qgroup_inherit **inherit, char *arg,
> -			    int type);
> -
>  #endif
> 

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [PATCH v2] btrfs-progs: qgroup: Remove support for specifying inherit type
  2017-12-20  5:19 [PATCH v2] btrfs-progs: qgroup: Remove support for specifying inherit type Qu Wenruo
  2017-12-20  7:47 ` Nikolay Borisov
@ 2018-07-21  7:43 ` Lu Fengqi
  1 sibling, 0 replies; 3+ messages in thread
From: Lu Fengqi @ 2018-07-21  7:43 UTC (permalink / raw)
  To: Qu Wenruo; +Cc: linux-btrfs

On Wed, Dec 20, 2017 at 01:19:12PM +0800, Qu Wenruo wrote:
>Since kernel is deprecating the support for specifying inherit type,
>remove the support in btrfs-progs too.

Is there any progress on deprecating the support for specifying inherit
type?

-- 
Thanks,
Lu

>
>Thankfully, the options for qgroup inheritance is hidden and not
>documented, so user shouldn't be affected at all.
>
>Signed-off-by: Qu Wenruo <wqu@suse.com>
>---
>changelog:
>v2:
>  Remove the "c:" option in getopt(), spotted by Misono.
>---
> cmds-subvolume.c | 25 ++-----------------------
> qgroup.c         | 42 ------------------------------------------
> qgroup.h         |  3 ---
> 3 files changed, 2 insertions(+), 68 deletions(-)
>
>diff --git a/cmds-subvolume.c b/cmds-subvolume.c
>index dc626a6495e5..f8e34bc842b3 100644
>--- a/cmds-subvolume.c
>+++ b/cmds-subvolume.c
>@@ -129,18 +129,11 @@ static int cmd_subvol_create(int argc, char **argv)
> 	DIR	*dirstream = NULL;
> 
> 	while (1) {
>-		int c = getopt(argc, argv, "c:i:");
>+		int c = getopt(argc, argv, "i:");
> 		if (c < 0)
> 			break;
> 
> 		switch (c) {
>-		case 'c':
>-			res = qgroup_inherit_add_copy(&inherit, optarg, 0);
>-			if (res) {
>-				retval = res;
>-				goto out;
>-			}
>-			break;
> 		case 'i':
> 			res = qgroup_inherit_add_group(&inherit, optarg);
> 			if (res) {
>@@ -665,18 +658,11 @@ static int cmd_subvol_snapshot(int argc, char **argv)
> 
> 	memset(&args, 0, sizeof(args));
> 	while (1) {
>-		int c = getopt(argc, argv, "c:i:r");
>+		int c = getopt(argc, argv, "i:r");
> 		if (c < 0)
> 			break;
> 
> 		switch (c) {
>-		case 'c':
>-			res = qgroup_inherit_add_copy(&inherit, optarg, 0);
>-			if (res) {
>-				retval = res;
>-				goto out;
>-			}
>-			break;
> 		case 'i':
> 			res = qgroup_inherit_add_group(&inherit, optarg);
> 			if (res) {
>@@ -687,13 +673,6 @@ static int cmd_subvol_snapshot(int argc, char **argv)
> 		case 'r':
> 			readonly = 1;
> 			break;
>-		case 'x':
>-			res = qgroup_inherit_add_copy(&inherit, optarg, 1);
>-			if (res) {
>-				retval = res;
>-				goto out;
>-			}
>-			break;
> 		default:
> 			usage(cmd_subvol_snapshot_usage);
> 		}
>diff --git a/qgroup.c b/qgroup.c
>index 156825fd431d..e9158a260251 100644
>--- a/qgroup.c
>+++ b/qgroup.c
>@@ -1310,45 +1310,3 @@ int qgroup_inherit_add_group(struct btrfs_qgroup_inherit **inherit, char *arg)
> 
> 	return 0;
> }
>-
>-int qgroup_inherit_add_copy(struct btrfs_qgroup_inherit **inherit, char *arg,
>-			    int type)
>-{
>-	int ret;
>-	u64 qgroup_src;
>-	u64 qgroup_dst;
>-	char *p;
>-	int pos = 0;
>-
>-	p = strchr(arg, ':');
>-	if (!p) {
>-bad:
>-		error("invalid copy specification, missing separator :");
>-		return -EINVAL;
>-	}
>-	*p = 0;
>-	qgroup_src = parse_qgroupid(arg);
>-	qgroup_dst = parse_qgroupid(p + 1);
>-	*p = ':';
>-
>-	if (!qgroup_src || !qgroup_dst)
>-		goto bad;
>-
>-	if (*inherit)
>-		pos = (*inherit)->num_qgroups +
>-		      (*inherit)->num_ref_copies * 2 * type;
>-
>-	ret = qgroup_inherit_realloc(inherit, 2, pos);
>-	if (ret)
>-		return ret;
>-
>-	(*inherit)->qgroups[pos++] = qgroup_src;
>-	(*inherit)->qgroups[pos++] = qgroup_dst;
>-
>-	if (!type)
>-		++(*inherit)->num_ref_copies;
>-	else
>-		++(*inherit)->num_excl_copies;
>-
>-	return 0;
>-}
>diff --git a/qgroup.h b/qgroup.h
>index 875fbdf37f5f..3fc57123dc2d 100644
>--- a/qgroup.h
>+++ b/qgroup.h
>@@ -92,7 +92,4 @@ int btrfs_qgroup_setup_comparer(struct btrfs_qgroup_comparer_set **comp_set,
> 				int is_descending);
> int qgroup_inherit_size(struct btrfs_qgroup_inherit *p);
> int qgroup_inherit_add_group(struct btrfs_qgroup_inherit **inherit, char *arg);
>-int qgroup_inherit_add_copy(struct btrfs_qgroup_inherit **inherit, char *arg,
>-			    int type);
>-
> #endif
>-- 
>2.15.1
>
>--
>To unsubscribe from this list: send the line "unsubscribe linux-btrfs" in
>the body of a message to majordomo@vger.kernel.org
>More majordomo info at  http://vger.kernel.org/majordomo-info.html
>
>



^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2018-07-21  8:35 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2017-12-20  5:19 [PATCH v2] btrfs-progs: qgroup: Remove support for specifying inherit type Qu Wenruo
2017-12-20  7:47 ` Nikolay Borisov
2018-07-21  7:43 ` Lu Fengqi

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).