@@ -238,7 +238,7 @@ static int setup_temp_root_tree(int fd, struct btrfs_mkfs_config *cfg,
u64 dev_bytenr, u64 fs_bytenr, u64 csum_bytenr)
{
struct extent_buffer *buf = NULL;
- u32 itemoff = __BTRFS_LEAF_DATA_SIZE(cfg->nodesize);
+ u32 itemoff = cfg->leaf_data_size;
int slot = 0;
int ret;
@@ -419,7 +419,7 @@ static int setup_temp_chunk_tree(int fd, struct btrfs_mkfs_config *cfg,
u64 chunk_bytenr)
{
struct extent_buffer *buf = NULL;
- u32 itemoff = __BTRFS_LEAF_DATA_SIZE(cfg->nodesize);
+ u32 itemoff = cfg->leaf_data_size;
int slot = 0;
int ret;
@@ -490,7 +490,7 @@ static int setup_temp_dev_tree(int fd, struct btrfs_mkfs_config *cfg,
u64 dev_bytenr)
{
struct extent_buffer *buf = NULL;
- u32 itemoff = __BTRFS_LEAF_DATA_SIZE(cfg->nodesize);
+ u32 itemoff = cfg->leaf_data_size;
int slot = 0;
int ret;
@@ -688,7 +688,7 @@ static int setup_temp_extent_tree(int fd, struct btrfs_mkfs_config *cfg,
u64 fs_bytenr, u64 csum_bytenr)
{
struct extent_buffer *buf = NULL;
- u32 itemoff = __BTRFS_LEAF_DATA_SIZE(cfg->nodesize);
+ u32 itemoff = cfg->leaf_data_size;
int slot = 0;
int ret;
@@ -1228,6 +1228,7 @@ static int do_convert(const char *devname, u32 convert_flags, u32 nodesize,
mkfs_cfg.sectorsize = blocksize;
mkfs_cfg.stripesize = blocksize;
mkfs_cfg.features = features;
+ mkfs_cfg.leaf_data_size = __BTRFS_LEAF_DATA_SIZE(nodesize);
printf("Create initial btrfs filesystem\n");
ret = make_convert_btrfs(fd, &mkfs_cfg, &cctx);
The mkfs_config can hold the BTRFS_LEAF_DATA_SIZE, so calculate this at config creation time and then use that value throughout convert instead of calling __BTRFS_LEAF_DATA_SIZE. Signed-off-by: Josef Bacik <josef@toxicpanda.com> --- convert/common.c | 8 ++++---- convert/main.c | 1 + 2 files changed, 5 insertions(+), 4 deletions(-)