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