diff options
Diffstat (limited to 'fs/btrfs/tests/btrfs-tests.c')
| -rw-r--r-- | fs/btrfs/tests/btrfs-tests.c | 14 | 
1 files changed, 10 insertions, 4 deletions
diff --git a/fs/btrfs/tests/btrfs-tests.c b/fs/btrfs/tests/btrfs-tests.c index bf62ad919a95..ea272432c930 100644 --- a/fs/btrfs/tests/btrfs-tests.c +++ b/fs/btrfs/tests/btrfs-tests.c @@ -79,7 +79,7 @@ static void btrfs_destroy_test_fs(void)  	unregister_filesystem(&test_type);  } -struct btrfs_fs_info *btrfs_alloc_dummy_fs_info(void) +struct btrfs_fs_info *btrfs_alloc_dummy_fs_info(u32 nodesize, u32 sectorsize)  {  	struct btrfs_fs_info *fs_info = kzalloc(sizeof(struct btrfs_fs_info),  						GFP_KERNEL); @@ -100,6 +100,9 @@ struct btrfs_fs_info *btrfs_alloc_dummy_fs_info(void)  		return NULL;  	} +	fs_info->nodesize = nodesize; +	fs_info->sectorsize = sectorsize; +  	if (init_srcu_struct(&fs_info->subvol_srcu)) {  		kfree(fs_info->fs_devices);  		kfree(fs_info->super_copy); @@ -162,6 +165,7 @@ void btrfs_free_dummy_fs_info(struct btrfs_fs_info *fs_info)  				slot = radix_tree_iter_retry(&iter);  			continue;  		} +		slot = radix_tree_iter_resume(slot, &iter);  		spin_unlock(&fs_info->buffer_lock);  		free_extent_buffer_stale(eb);  		spin_lock(&fs_info->buffer_lock); @@ -189,7 +193,8 @@ void btrfs_free_dummy_root(struct btrfs_root *root)  }  struct btrfs_block_group_cache * -btrfs_alloc_dummy_block_group(unsigned long length, u32 sectorsize) +btrfs_alloc_dummy_block_group(struct btrfs_fs_info *fs_info, +			      unsigned long length)  {  	struct btrfs_block_group_cache *cache; @@ -206,8 +211,9 @@ btrfs_alloc_dummy_block_group(unsigned long length, u32 sectorsize)  	cache->key.objectid = 0;  	cache->key.offset = length;  	cache->key.type = BTRFS_BLOCK_GROUP_ITEM_KEY; -	cache->sectorsize = sectorsize; -	cache->full_stripe_len = sectorsize; +	cache->sectorsize = fs_info->sectorsize; +	cache->full_stripe_len = fs_info->sectorsize; +	cache->fs_info = fs_info;  	INIT_LIST_HEAD(&cache->list);  	INIT_LIST_HEAD(&cache->cluster_list);  |