#include "transaction.h"
#include "list.h"
#include "utils.h"
+#include "help.h"
-#define BUFFER_SIZE (64 * 1024)
+#define BUFFER_SIZE SZ_64K
/* we write the mirror info to stdout unless they are dumping the data
* to stdout
}
logical = key.objectid;
if (key.type == BTRFS_METADATA_ITEM_KEY)
- len = fs_info->tree_root->nodesize;
+ len = fs_info->nodesize;
else
len = key.offset;
int i;
cur_len = len - cur_offset;
- ret = btrfs_map_block(&fs_info->mapping_tree, READ,
- logical + cur_offset, &cur_len,
- &multi, mirror_num, NULL);
+ ret = btrfs_map_block(fs_info, READ, logical + cur_offset,
+ &cur_len, &multi, mirror_num, NULL);
if (ret) {
fprintf(info_file,
"Error: fails to map mirror%d logical %llu: %s\n",
int mirror_num;
int ret = 0;
- num_copies = btrfs_num_copies(&fs_info->mapping_tree, logical, len);
+ num_copies = btrfs_num_copies(fs_info, logical, len);
for (mirror_num = 1; mirror_num <= num_copies; mirror_num++) {
ret = __print_mapping_info(fs_info, logical, len, mirror_num);
if (ret < 0)
while (cur_offset < length) {
cur_len = min_t(u64, length - cur_offset, BUFFER_SIZE);
- ret = read_extent_data(fs_info->tree_root, buffer,
+ ret = read_extent_data(fs_info, buffer,
logical + cur_offset, &cur_len, mirror);
if (ret < 0) {
fprintf(stderr,
return ret;
}
-static void print_usage(void) __attribute__((noreturn));
+__attribute__((noreturn))
static void print_usage(void)
{
printf("usage: btrfs-map-logical [options] device\n");
}
if (bytes == 0)
- bytes = root->nodesize;
+ bytes = root->fs_info->nodesize;
cur_logical = logical;
cur_len = bytes;