Qu Wenruo
2014-Jul-23 05:47 UTC
[PATCH 1/4] btrfs-progs: Remove fprintf() in find_mount_root().
find_mount_root() function in utils.c should not print error string.
Caller should be responsible to print error string.
This patch will remove the only fprintf in find_mount_root() and modify
the caller a little to use strerror() to prompt users.
Signed-off-by: Qu Wenruo <quwenruo@cn.fujitsu.com>
---
cmds-receive.c | 4 ++--
cmds-send.c | 4 ++--
utils.c | 6 +-----
3 files changed, 5 insertions(+), 9 deletions(-)
diff --git a/cmds-receive.c b/cmds-receive.c
index 48380a5..72afe2a 100644
--- a/cmds-receive.c
+++ b/cmds-receive.c
@@ -980,9 +980,9 @@ static int do_receive(struct btrfs_receive *r, const char
*tomnt, int r_fd,
ret = find_mount_root(dest_dir_full_path, &r->root_path);
if (ret < 0) {
- ret = -EINVAL;
fprintf(stderr, "ERROR: failed to determine mount point "
- "for %s\n", dest_dir_full_path);
+ "for %s: %s\n", dest_dir_full_path, strerror(-ret));
+ ret = -EINVAL;
goto out;
}
r->mnt_fd = open(r->root_path, O_RDONLY | O_NOATIME);
diff --git a/cmds-send.c b/cmds-send.c
index 9a73b32..48c3df4 100644
--- a/cmds-send.c
+++ b/cmds-send.c
@@ -356,9 +356,9 @@ static int init_root_path(struct btrfs_send *s, const char
*subvol)
ret = find_mount_root(subvol, &s->root_path);
if (ret < 0) {
- ret = -EINVAL;
fprintf(stderr, "ERROR: failed to determine mount point "
- "for %s\n", subvol);
+ "for %s: %s\n", subvol, strerror(-ret));
+ ret = -EINVAL;
goto out;
}
diff --git a/utils.c b/utils.c
index 11250d9..2d0f18e 100644
--- a/utils.c
+++ b/utils.c
@@ -2422,12 +2422,8 @@ int find_mount_root(const char *path, char **mount_root)
}
endmntent(mnttab);
- if (!longest_match) {
- fprintf(stderr,
- "ERROR: Failed to find mount root for path %s.\n",
- path);
+ if (!longest_match)
return -ENOENT;
- }
ret = 0;
*mount_root = realpath(longest_match, NULL);
--
2.0.2
--
To unsubscribe from this list: send the line "unsubscribe linux-btrfs"
in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html