On Mon, Mar 31, 2025 at 07:58:30PM +0800, Integral wrote:
> Add the missing usage function for "fs" subcommand; when no matching
> subcommand exists, print the usage and return -EINVAL.
>
> Signed-off-by: Integral <[email protected]>
Applied
> ---
> c_src/bcachefs.c | 15 ++++++++-------
> c_src/cmd_fs.c | 13 +++++++++++++
> c_src/cmds.h | 1 +
> 3 files changed, 22 insertions(+), 7 deletions(-)
>
> diff --git a/c_src/bcachefs.c b/c_src/bcachefs.c
> index f2a1449e..2f718147 100644
> --- a/c_src/bcachefs.c
> +++ b/c_src/bcachefs.c
> @@ -118,16 +118,15 @@ int fs_cmds(int argc, char *argv[])
> {
> char *cmd = pop_cmd(&argc, argv);
>
> - if (argc < 1) {
> - bcachefs_usage();
> - exit(EXIT_FAILURE);
> - }
> + if (argc < 1)
> + return fs_usage();
> if (!strcmp(cmd, "usage"))
> return cmd_fs_usage(argc, argv);
> if (!strcmp(cmd, "top"))
> return cmd_fs_top(argc, argv);
>
> - return 0;
> + fs_usage();
> + return -EINVAL;
> }
>
> int device_cmds(int argc, char *argv[])
> @@ -153,7 +152,8 @@ int device_cmds(int argc, char *argv[])
> if (!strcmp(cmd, "resize-journal"))
> return cmd_device_resize_journal(argc, argv);
>
> - return 0;
> + device_usage();
> + return -EINVAL;
> }
>
> int data_cmds(int argc, char *argv[])
> @@ -169,5 +169,6 @@ int data_cmds(int argc, char *argv[])
> if (!strcmp(cmd, "job"))
> return cmd_data_job(argc, argv);
>
> - return 0;
> + data_usage();
> + return -EINVAL;
> }
> diff --git a/c_src/cmd_fs.c b/c_src/cmd_fs.c
> index 06f797b9..4ab3ec0d 100644
> --- a/c_src/cmd_fs.c
> +++ b/c_src/cmd_fs.c
> @@ -491,6 +491,19 @@ devs:
> bcache_fs_close(fs);
> }
>
> +int fs_usage(void)
> +{
> + puts("bcachefs fs - manage a running filesystem\n"
> + "Usage: bcachefs fs <CMD> [OPTIONS]\n"
> + "\n"
> + "Commands:\n"
> + " usage Display detailed filesystem usage\n"
> + " top Show runtime performance information\n"
> + "\n"
> + "Report bugs to <[email protected]>");
> + return 0;
> +}
> +
> static void fs_usage_usage(void)
> {
> puts("bcachefs fs usage - display detailed filesystem usage\n"
> diff --git a/c_src/cmds.h b/c_src/cmds.h
> index 9502d539..82f28af2 100644
> --- a/c_src/cmds.h
> +++ b/c_src/cmds.h
> @@ -15,6 +15,7 @@ int cmd_recover_super(int argc, char *argv[]);
> int cmd_reset_counters(int argc, char *argv[]);
> int cmd_set_option(int argc, char *argv[]);
>
> +int fs_usage(void);
> int cmd_fs_usage(int argc, char *argv[]);
> int cmd_fs_top(int argc, char *argv[]);
>
> --
> 2.49.0
>