summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDavid Sterba <dsterba@suse.cz>2015-01-19 18:47:20 +0100
committerDavid Sterba <dsterba@suse.cz>2015-01-19 18:53:41 +0100
commite1ee8b2a0f60ddd51a22844f060ec486732b67b5 (patch)
tree57bbc8e2d71f898ac3aeddcaeba4069e2bd4d7cd
parent2b7cdab42529bc4ed4c36a3659504e50f0ef700c (diff)
btrfs-progs: fix check of running scrub
Scrub on multiple devices may report wrong status if scrub finishes early on one of them. Reported-by: Sandy McArthur Jr <sandymac@gmail.com> Signed-off-by: David Sterba <dsterba@suse.cz>
-rw-r--r--cmds-scrub.c6
1 files changed, 1 insertions, 5 deletions
diff --git a/cmds-scrub.c b/cmds-scrub.c
index eb50d8a6..06c2a306 100644
--- a/cmds-scrub.c
+++ b/cmds-scrub.c
@@ -1073,15 +1073,11 @@ static int is_scrub_running_in_kernel(int fd,
memset(&sp, 0, sizeof(sp));
sp.scrub_args.devid = di_args[i].devid;
ret = ioctl(fd, BTRFS_IOC_SCRUB_PROGRESS, &sp.scrub_args);
- if (ret < 0 && errno == ENODEV)
- continue;
- if (ret < 0 && errno == ENOTCONN)
- return 0;
if (!ret)
return 1;
}
- return 1;
+ return 0;
}
static const char * const cmd_scrub_start_usage[];