From 637d206666cea1f439d7117366c6a3065aa375ae Mon Sep 17 00:00:00 2001 From: "Darrick J. Wong" Date: Tue, 15 Jun 2021 17:13:10 -0700 Subject: [PATCH] xfs_io: fix broken funshare_cmd usage Create a funshare_cmd and use that to store information about the xfs_io funshare command instead of overwriting the contents of fzero_cmd. This fixes confusing output like: $ xfs_io -c 'fzero 2 3 --help' / fzero: invalid option -- '-' funshare off len -- unshares shared blocks within the range Signed-off-by: Darrick J. Wong Reviewed-by: Christoph Hellwig Reviewed-by: Carlos Maiolino --- io/prealloc.c | 17 +++++++++-------- 1 file changed, 9 insertions(+), 8 deletions(-) diff --git a/io/prealloc.c b/io/prealloc.c index 382e81191..2ae8afe96 100644 --- a/io/prealloc.c +++ b/io/prealloc.c @@ -43,6 +43,7 @@ static cmdinfo_t fpunch_cmd; static cmdinfo_t fcollapse_cmd; static cmdinfo_t finsert_cmd; static cmdinfo_t fzero_cmd; +static cmdinfo_t funshare_cmd; #endif static int @@ -467,14 +468,14 @@ prealloc_init(void) _("zeroes space and eliminates holes by preallocating"); add_command(&fzero_cmd); - fzero_cmd.name = "funshare"; - fzero_cmd.cfunc = funshare_f; - fzero_cmd.argmin = 2; - fzero_cmd.argmax = 2; - fzero_cmd.flags = CMD_NOMAP_OK | CMD_FOREIGN_OK; - fzero_cmd.args = _("off len"); - fzero_cmd.oneline = + funshare_cmd.name = "funshare"; + funshare_cmd.cfunc = funshare_f; + funshare_cmd.argmin = 2; + funshare_cmd.argmax = 2; + funshare_cmd.flags = CMD_NOMAP_OK | CMD_FOREIGN_OK; + funshare_cmd.args = _("off len"); + funshare_cmd.oneline = _("unshares shared blocks within the range"); - add_command(&fzero_cmd); + add_command(&funshare_cmd); #endif /* HAVE_FALLOCATE */ } -- 2.47.3