diff options
author | Jaegeuk Kim <jaegeuk@kernel.org> | 2019-03-23 19:23:40 +0900 |
---|---|---|
committer | Jaegeuk Kim <jaegeuk@kernel.org> | 2019-03-26 11:25:11 -0700 |
commit | e87d54e90d10cf44f6a061a39133a7847820c74f (patch) | |
tree | 79134f4b8ba3319ae19e1e8c8c290ee95f1fee19 | |
parent | fec5a029b1f3379b2192f9b6cb2b7d749dcffc34 (diff) | |
download | f2fs-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.c | 12 |
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); |