aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJaegeuk Kim <jaegeuk@kernel.org>2019-03-23 19:23:40 +0900
committerJaegeuk Kim <jaegeuk@kernel.org>2019-03-26 11:25:11 -0700
commite87d54e90d10cf44f6a061a39133a7847820c74f (patch)
tree79134f4b8ba3319ae19e1e8c8c290ee95f1fee19
parentfec5a029b1f3379b2192f9b6cb2b7d749dcffc34 (diff)
downloadf2fs-tools-e87d54e90d10cf44f6a061a39133a7847820c74f.tar.gz
f2fs_io: exit if system(3) is failed
Exit the request, if system(3) is failed to be executed. Signed-off-by: Jaegeuk Kim <jaegeuk@kernel.org>
-rw-r--r--tools/f2fs_io/f2fs_io.c12
1 files changed, 8 insertions, 4 deletions
diff --git a/tools/f2fs_io/f2fs_io.c b/tools/f2fs_io/f2fs_io.c
index ee4f3e1..91f8cf2 100644
--- a/tools/f2fs_io/f2fs_io.c
+++ b/tools/f2fs_io/f2fs_io.c
@@ -374,19 +374,23 @@ static void do_gc_urgent(int argc, char **argv, const struct cmd_desc *cmd)
if (argc == 3 && !strcmp(argv[2], "start")) {
printf("gc_urgent: start on %s\n", argv[1]);
sprintf(command, "echo %d > %s/%s/gc_urgent", 1, "/sys/fs/f2fs/", argv[1]);
- system(command);
+ if (system(command))
+ exit(1);
} else if (argc == 3 && !strcmp(argv[2], "end")) {
printf("gc_urgent: end on %s\n", argv[1]);
sprintf(command, "echo %d > %s/%s/gc_urgent", 0, "/sys/fs/f2fs/", argv[1]);
- system(command);
+ if (system(command))
+ exit(1);
} else if (argc == 4 && !strcmp(argv[2], "run")) {
printf("gc_urgent: start on %s for %d secs\n", argv[1], atoi(argv[3]));
sprintf(command, "echo %d > %s/%s/gc_urgent", 1, "/sys/fs/f2fs/", argv[1]);
- system(command);
+ if (system(command))
+ exit(1);
sleep(atoi(argv[3]));
printf("gc_urgent: end on %s for %d secs\n", argv[1], atoi(argv[3]));
sprintf(command, "echo %d > %s/%s/gc_urgent", 0, "/sys/fs/f2fs/", argv[1]);
- system(command);
+ if (system(command))
+ exit(1);
} else {
fputs("Excess arguments\n\n", stderr);
fputs(cmd->cmd_help, stderr);