From 8e2bd38f2989c76d80c5b21fac3f839fcce24e4d Mon Sep 17 00:00:00 2001 From: Anand Jain Date: Tue, 6 Dec 2016 12:39:38 +0800 Subject: [PATCH] btrfs-progs: recursive defrag cleanup duplicate code Signed-off-by: Anand Jain Signed-off-by: David Sterba --- cmds-filesystem.c | 20 ++++++-------------- 1 file changed, 6 insertions(+), 14 deletions(-) diff --git a/cmds-filesystem.c b/cmds-filesystem.c index 96bdc40..64b1cc4 100644 --- a/cmds-filesystem.c +++ b/cmds-filesystem.c @@ -1136,21 +1136,13 @@ static int cmd_filesystem_defrag(int argc, char **argv) close_file_or_dir(fd, dirstream); continue; } - if (recursive) { - if (S_ISDIR(st.st_mode)) { - ret = nftw(argv[i], defrag_callback, 10, + if (recursive && S_ISDIR(st.st_mode)) { + ret = nftw(argv[i], defrag_callback, 10, FTW_MOUNT | FTW_PHYS); - if (ret == ENOTTY) - exit(1); - /* errors are handled in the callback */ - ret = 0; - } else { - if (defrag_global_verbose) - printf("%s\n", argv[i]); - ret = do_defrag(fd, defrag_global_fancy_ioctl, - &defrag_global_range); - e = errno; - } + if (ret == ENOTTY) + exit(1); + /* errors are handled in the callback */ + ret = 0; } else { if (defrag_global_verbose) printf("%s\n", argv[i]); -- 2.7.4