[PATCH] xfs_quota: un-flag non-foreign-capable commands

Eric Sandeen sandeen at redhat.com
Thu Sep 15 17:58:26 CDT 2016


The off command calls XFS_QUOTAOFF / Q_XQUOTAOFF, which calls
quota_disable in the kernel, which returns ENOSYS if the
->quota_enable quota op doesn't exist - and it does not exist
on any non-xfs filesystems.

We could get clever if we wanted it, and send Q_QUOTAOFF
instead for foreign filesystems, but for now it's broken
so just remove the flag.

The free command relies on XFS_IOC_FSGEOMETRY_V1, so unflag it
as well.

Signed-off-by: Eric Sandeen <sandeen at redhat.com>
---

diff --git a/quota/state.c b/quota/state.c
index 05e4ec5..09dfa70 100644
--- a/quota/state.c
+++ b/quota/state.c
@@ -584,7 +584,6 @@ state_init(void)
 	off_cmd.args = _("[-gpu] [-v]");
 	off_cmd.oneline = _("permanently switch quota off for a path");
 	off_cmd.help = off_help;
-	off_cmd.flags = CMD_FLAG_FOREIGN_OK;
 
 	state_cmd.name = "state";
 	state_cmd.cfunc = state_f;
diff --git a/quota/free.c b/quota/free.c
index b9be954..3c8a5ce 100644
--- a/quota/free.c
+++ b/quota/free.c
@@ -372,7 +372,6 @@ free_init(void)
 	free_cmd.args = _("[-bir] [-hn] [-f file]");
 	free_cmd.oneline = _("show free and used counts for blocks and inodes");
 	free_cmd.help = free_help;
-	free_cmd.flags = CMD_FLAG_FOREIGN_OK;
 
 	add_command(&free_cmd);
 }



More information about the xfs mailing list