diff options
author | Qu Wenruo <quwenruo@cn.fujitsu.com> | 2015-06-17 15:49:00 +0800 |
---|---|---|
committer | David Sterba <dsterba@suse.cz> | 2015-06-17 16:08:35 +0200 |
commit | 0074cd315c9e82e4f0ff8348b77d785da7eb487b (patch) | |
tree | 2fbf266c7761d048e80d2fa5ec52dc880be1c951 /cmds-check.c | |
parent | cf4eb9a90e44937b395200d78172411f16fe31af (diff) | |
download | btrfs-progs-0074cd315c9e82e4f0ff8348b77d785da7eb487b.tar.gz |
btrfs-progs: export read_extent_data function
Export it for later btrfs-map-logical cleanup.
Signed-off-by: Qu Wenruo <quwenruo@cn.fujitsu.com>
Signed-off-by: David Sterba <dsterba@suse.cz>
Diffstat (limited to 'cmds-check.c')
-rw-r--r-- | cmds-check.c | 34 |
1 files changed, 0 insertions, 34 deletions
diff --git a/cmds-check.c b/cmds-check.c index db121b1..778f141 100644 --- a/cmds-check.c +++ b/cmds-check.c @@ -5235,40 +5235,6 @@ static int check_space_cache(struct btrfs_root *root) return error ? -EINVAL : 0; } -static int read_extent_data(struct btrfs_root *root, char *data, - u64 logical, u64 *len, int mirror) -{ - u64 offset = 0; - struct btrfs_multi_bio *multi = NULL; - struct btrfs_fs_info *info = root->fs_info; - struct btrfs_device *device; - int ret = 0; - u64 max_len = *len; - - ret = btrfs_map_block(&info->mapping_tree, READ, logical, len, - &multi, mirror, NULL); - if (ret) { - fprintf(stderr, "Couldn't map the block %llu\n", - logical + offset); - goto err; - } - device = multi->stripes[0].dev; - - if (device->fd == 0) - goto err; - if (*len > max_len) - *len = max_len; - - ret = pread64(device->fd, data, *len, multi->stripes[0].physical); - if (ret != *len) - ret = -EIO; - else - ret = 0; -err: - kfree(multi); - return ret; -} - static int check_extent_csums(struct btrfs_root *root, u64 bytenr, u64 num_bytes, unsigned long leaf_offset, struct extent_buffer *eb) { |