btrfs-progs: Refactor block sizes users in cmds-restore.c
authorQu Wenruo <quwenruo@cn.fujitsu.com>
Thu, 18 May 2017 01:26:48 +0000 (09:26 +0800)
committerDavid Sterba <dsterba@suse.com>
Mon, 3 Jul 2017 11:35:10 +0000 (13:35 +0200)
Signed-off-by: Qu Wenruo <quwenruo@cn.fujitsu.com>
cmds-restore.c

index c327cef..09388b2 100644 (file)
@@ -126,7 +126,7 @@ static int decompress_lzo(struct btrfs_root *root, unsigned char *inbuf,
 
                inbuf += LZO_LEN;
                tot_in += LZO_LEN;
-               new_len = lzo1x_worst_compress(root->sectorsize);
+               new_len = lzo1x_worst_compress(root->fs_info->sectorsize);
                ret = lzo1x_decompress_safe((const unsigned char *)inbuf, in_len,
                                            (unsigned char *)outbuf,
                                            (void *)&new_len, NULL);
@@ -143,8 +143,8 @@ static int decompress_lzo(struct btrfs_root *root, unsigned char *inbuf,
                 * If the 4 byte header does not fit to the rest of the page we
                 * have to move to the next one, unless we read some garbage
                 */
-               mod_page = tot_in % root->sectorsize;
-               rem_page = root->sectorsize - mod_page;
+               mod_page = tot_in % root->fs_info->sectorsize;
+               rem_page = root->fs_info->sectorsize - mod_page;
                if (rem_page < LZO_LEN) {
                        inbuf += rem_page;
                        tot_in += rem_page;
@@ -1256,7 +1256,7 @@ static struct btrfs_root *open_fs(const char *dev, u64 root_location,
                        root_location = btrfs_super_root(fs_info->super_copy);
                generation = btrfs_super_generation(fs_info->super_copy);
                root->node = read_tree_block(root, root_location,
-                                            root->nodesize, generation);
+                                            fs_info->nodesize, generation);
                if (!extent_buffer_uptodate(root->node)) {
                        fprintf(stderr, "Error opening tree root\n");
                        close_ctree(root);
@@ -1502,7 +1502,8 @@ int cmd_restore(int argc, char **argv)
 
        if (fs_location != 0) {
                free_extent_buffer(root->node);
-               root->node = read_tree_block(root, fs_location, root->nodesize, 0);
+               root->node = read_tree_block(root, fs_location,
+                               root->fs_info->nodesize, 0);
                if (!extent_buffer_uptodate(root->node)) {
                        fprintf(stderr, "Failed to read fs location\n");
                        ret = 1;