summaryrefslogtreecommitdiff
path: root/c_src
diff options
context:
space:
mode:
authorIntegral <integral@archlinuxcn.org>2025-03-31 20:00:32 +0800
committerKent Overstreet <kent.overstreet@linux.dev>2025-03-31 12:51:18 -0400
commit66c943be6caf033c2992c7e4cf99a35e0b1460c1 (patch)
tree3366e3723570cd932c4d6e661dbba40cd0c45125 /c_src
parent3d968816a42d249bc5b1d3c087ab023b588e2e6f (diff)
bcachefs-tools: add fs_usage & return -EINVAL when no matching subcommand
Add the missing usage function for "fs" subcommand; when no matching subcommand exists, print the usage and return -EINVAL. Signed-off-by: Integral <integral@archlinuxcn.org> Signed-off-by: Kent Overstreet <kent.overstreet@linux.dev>
Diffstat (limited to 'c_src')
-rw-r--r--c_src/bcachefs.c15
-rw-r--r--c_src/cmd_fs.c13
-rw-r--r--c_src/cmds.h1
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 <linux-bcachefs@vger.kernel.org>");
+ 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[]);