diff options
author | Omar Sandoval <osandov@fb.com> | 2015-06-24 09:09:17 -0700 |
---|---|---|
committer | David Sterba <dsterba@suse.cz> | 2015-06-26 16:33:39 +0200 |
commit | f802f572b1cb1d33bab9747e87e6506b284546cf (patch) | |
tree | e8763c099809f0eb6129d95be98d8fe9ee033fe1 | |
parent | 12aba72aed310d6d3215684c44849233df7d79d2 (diff) |
btrfs-progs: alias btrfs device delete to btrfs device remove
There's an awkward asymmetry between btrfs device add and btrfs device
delete. Resolve this by aliasing delete to remove.
Signed-off-by: Omar Sandoval <osandov@fb.com>
Signed-off-by: David Sterba <dsterba@suse.cz>
-rw-r--r-- | Documentation/btrfs-device.asciidoc | 5 | ||||
-rw-r--r-- | cmds-device.c | 35 | ||||
-rw-r--r-- | commands.h | 1 | ||||
-rw-r--r-- | help.c | 10 |
4 files changed, 37 insertions, 14 deletions
diff --git a/Documentation/btrfs-device.asciidoc b/Documentation/btrfs-device.asciidoc index c56cf5ef..2827598a 100644 --- a/Documentation/btrfs-device.asciidoc +++ b/Documentation/btrfs-device.asciidoc @@ -74,9 +74,12 @@ do not perform discard by default -f|--force:::: force overwrite of existing filesystem on the given disk(s) -*delete* <dev> [<dev>...] <path>:: +*remove* <dev> [<dev>...] <path>:: Remove device(s) from a filesystem identified by <path>. +*delete* <dev> [<dev>...] <path>:: +Alias of remove kept for backwards compatability + *ready* <device>:: Check device to see if it has all of it's devices in cache for mounting. diff --git a/cmds-device.c b/cmds-device.c index c588a6e0..0e605002 100644 --- a/cmds-device.c +++ b/cmds-device.c @@ -143,20 +143,14 @@ error_out: return !!ret; } -static const char * const cmd_rm_dev_usage[] = { - "btrfs device delete <device> [<device>...] <path>", - "Remove a device from a filesystem", - NULL -}; - -static int cmd_rm_dev(int argc, char **argv) +static int _cmd_rm_dev(int argc, char **argv, const char * const *usagestr) { char *mntpnt; int i, fdmnt, ret=0, e; DIR *dirstream = NULL; if (check_argc_min(argc, 3)) - usage(cmd_rm_dev_usage); + usage(usagestr); mntpnt = argv[argc - 1]; @@ -198,6 +192,28 @@ static int cmd_rm_dev(int argc, char **argv) return !!ret; } +static const char * const cmd_rm_dev_usage[] = { + "btrfs device remove <device> [<device>...] <path>", + "Remove a device from a filesystem", + NULL +}; + +static int cmd_rm_dev(int argc, char **argv) +{ + return _cmd_rm_dev(argc, argv, cmd_rm_dev_usage); +} + +static const char * const cmd_del_dev_usage[] = { + "btrfs device delete <device> [<device>...] <path>", + "Remove a device from a filesystem", + NULL +}; + +static int cmd_del_dev(int argc, char **argv) +{ + return _cmd_rm_dev(argc, argv, cmd_del_dev_usage); +} + static const char * const cmd_scan_dev_usage[] = { "btrfs device scan [(-d|--all-devices)|<device> [<device>...]]", "Scan devices for a btrfs filesystem", @@ -590,7 +606,8 @@ static const char device_cmd_group_info[] = const struct cmd_group device_cmd_group = { device_cmd_group_usage, device_cmd_group_info, { { "add", cmd_add_dev, cmd_add_dev_usage, NULL, 0 }, - { "delete", cmd_rm_dev, cmd_rm_dev_usage, NULL, 0 }, + { "delete", cmd_del_dev, cmd_del_dev_usage, NULL, CMD_ALIAS }, + { "remove", cmd_rm_dev, cmd_rm_dev_usage, NULL, 0 }, { "scan", cmd_scan_dev, cmd_scan_dev_usage, NULL, 0 }, { "ready", cmd_ready_dev, cmd_ready_dev_usage, NULL, 0 }, { "stats", cmd_dev_stats, cmd_dev_stats_usage, NULL, 0 }, @@ -19,6 +19,7 @@ enum { CMD_HIDDEN = (1 << 0), /* should not be in help listings */ + CMD_ALIAS = (1 << 1), /* alias of next command in cmd_group */ }; struct cmd_struct { @@ -79,11 +79,13 @@ static int do_usage_one_command(const char * const *usagestr, static int usage_command_internal(const char * const *usagestr, const char *token, int full, int lst, - FILE *outf) + int alias, FILE *outf) { - unsigned int flags = USAGE_SHORT; + unsigned int flags = 0; int ret; + if (!alias) + flags |= USAGE_SHORT; if (full) flags |= USAGE_LONG | USAGE_OPTIONS; if (lst) @@ -108,7 +110,7 @@ static void usage_command_usagestr(const char * const *usagestr, FILE *outf = err ? stderr : stdout; int ret; - ret = usage_command_internal(usagestr, token, full, 0, outf); + ret = usage_command_internal(usagestr, token, full, 0, 0, outf); if (!ret) fputc('\n', outf); } @@ -144,7 +146,7 @@ static void usage_command_group_internal(const struct cmd_group *grp, int full, } usage_command_internal(cmd->usagestr, cmd->token, full, - 1, outf); + 1, cmd->flags & CMD_ALIAS, outf); continue; } |