Lines Matching refs:fs_info

117 	struct btrfs_fs_info *fs_info = root->fs_info;  in btrfs_alloc_data_chunk_ondemand()  local
121 bytes = ALIGN(bytes, fs_info->sectorsize); in btrfs_alloc_data_chunk_ondemand()
126 return btrfs_reserve_data_bytes(fs_info, bytes, flush); in btrfs_alloc_data_chunk_ondemand()
133 struct btrfs_fs_info *fs_info = inode->root->fs_info; in btrfs_check_data_free_space() local
138 len = round_up(start + len, fs_info->sectorsize) - in btrfs_check_data_free_space()
139 round_down(start, fs_info->sectorsize); in btrfs_check_data_free_space()
140 start = round_down(start, fs_info->sectorsize); in btrfs_check_data_free_space()
147 ret = btrfs_reserve_data_bytes(fs_info, len, flush); in btrfs_check_data_free_space()
154 btrfs_free_reserved_data_space_noquota(fs_info, len); in btrfs_check_data_free_space()
171 void btrfs_free_reserved_data_space_noquota(struct btrfs_fs_info *fs_info, in btrfs_free_reserved_data_space_noquota() argument
176 ASSERT(IS_ALIGNED(len, fs_info->sectorsize)); in btrfs_free_reserved_data_space_noquota()
178 data_sinfo = fs_info->data_sinfo; in btrfs_free_reserved_data_space_noquota()
179 btrfs_space_info_free_bytes_may_use(fs_info, data_sinfo, len); in btrfs_free_reserved_data_space_noquota()
192 struct btrfs_fs_info *fs_info = inode->root->fs_info; in btrfs_free_reserved_data_space() local
195 len = round_up(start + len, fs_info->sectorsize) - in btrfs_free_reserved_data_space()
196 round_down(start, fs_info->sectorsize); in btrfs_free_reserved_data_space()
197 start = round_down(start, fs_info->sectorsize); in btrfs_free_reserved_data_space()
199 btrfs_free_reserved_data_space_noquota(fs_info, len); in btrfs_free_reserved_data_space()
218 struct btrfs_fs_info *fs_info = inode->root->fs_info; in btrfs_inode_rsv_release() local
228 released = btrfs_block_rsv_release(fs_info, block_rsv, 0, in btrfs_inode_rsv_release()
231 trace_btrfs_space_reservation(fs_info, "delalloc", in btrfs_inode_rsv_release()
240 static void btrfs_calculate_inode_block_rsv_size(struct btrfs_fs_info *fs_info, in btrfs_calculate_inode_block_rsv_size() argument
257 reserve_size = btrfs_calc_insert_metadata_size(fs_info, in btrfs_calculate_inode_block_rsv_size()
259 reserve_size += btrfs_calc_metadata_size(fs_info, 1); in btrfs_calculate_inode_block_rsv_size()
261 csum_leaves = btrfs_csum_bytes_to_leaves(fs_info, in btrfs_calculate_inode_block_rsv_size()
263 reserve_size += btrfs_calc_insert_metadata_size(fs_info, in btrfs_calculate_inode_block_rsv_size()
271 qgroup_rsv_size = (u64)outstanding_extents * fs_info->nodesize; in btrfs_calculate_inode_block_rsv_size()
279 static void calc_inode_reservations(struct btrfs_fs_info *fs_info, in calc_inode_reservations() argument
283 u64 nr_extents = count_max_extents(fs_info, num_bytes); in calc_inode_reservations()
284 u64 csum_leaves = btrfs_csum_bytes_to_leaves(fs_info, disk_num_bytes); in calc_inode_reservations()
285 u64 inode_update = btrfs_calc_metadata_size(fs_info, 1); in calc_inode_reservations()
287 *meta_reserve = btrfs_calc_insert_metadata_size(fs_info, in calc_inode_reservations()
295 *qgroup_reserve = nr_extents * fs_info->nodesize; in calc_inode_reservations()
302 struct btrfs_fs_info *fs_info = root->fs_info; in btrfs_delalloc_reserve_metadata() local
324 if (btrfs_transaction_in_commit(fs_info)) in btrfs_delalloc_reserve_metadata()
328 num_bytes = ALIGN(num_bytes, fs_info->sectorsize); in btrfs_delalloc_reserve_metadata()
329 disk_num_bytes = ALIGN(disk_num_bytes, fs_info->sectorsize); in btrfs_delalloc_reserve_metadata()
341 calc_inode_reservations(fs_info, num_bytes, disk_num_bytes, in btrfs_delalloc_reserve_metadata()
347 ret = btrfs_reserve_metadata_bytes(fs_info, block_rsv, meta_reserve, flush); in btrfs_delalloc_reserve_metadata()
360 nr_extents = count_max_extents(fs_info, num_bytes); in btrfs_delalloc_reserve_metadata()
363 btrfs_calculate_inode_block_rsv_size(fs_info, inode); in btrfs_delalloc_reserve_metadata()
368 trace_btrfs_space_reservation(root->fs_info, "delalloc", in btrfs_delalloc_reserve_metadata()
392 struct btrfs_fs_info *fs_info = inode->root->fs_info; in btrfs_delalloc_release_metadata() local
394 num_bytes = ALIGN(num_bytes, fs_info->sectorsize); in btrfs_delalloc_release_metadata()
397 btrfs_calculate_inode_block_rsv_size(fs_info, inode); in btrfs_delalloc_release_metadata()
400 if (btrfs_is_testing(fs_info)) in btrfs_delalloc_release_metadata()
419 struct btrfs_fs_info *fs_info = inode->root->fs_info; in btrfs_delalloc_release_extents() local
423 num_extents = count_max_extents(fs_info, num_bytes); in btrfs_delalloc_release_extents()
425 btrfs_calculate_inode_block_rsv_size(fs_info, inode); in btrfs_delalloc_release_extents()
428 if (btrfs_is_testing(fs_info)) in btrfs_delalloc_release_extents()