Home
last modified time | relevance | path

Searched refs:space_info (Results 1 – 22 of 22) sorted by relevance

/linux-6.15/fs/btrfs/
H A Dspace-info.c244 space_info = kzalloc(sizeof(*space_info), GFP_NOFS); in create_space_info()
245 if (!space_info) in create_space_info()
268 list_add(&space_info->list, &info->space_info); in create_space_info()
895 if ((space_info->bytes_used + space_info->bytes_reserved + in need_preemptive_reclaim()
899 used = space_info->bytes_may_use + space_info->bytes_pinned; in need_preemptive_reclaim()
951 used = space_info->bytes_used + space_info->bytes_reserved + in need_preemptive_reclaim()
1004 if (global_rsv->space_info != space_info) in steal_from_global_rsv()
1271 space_info->clamp = max(1, space_info->clamp - 1); in btrfs_preempt_reclaim_metadata_space()
1630 space_info->clamp = min(space_info->clamp + 1, 8); in maybe_clamp_preempt()
1866 list_for_each_entry(space_info, &fs_info->space_info, list) { in btrfs_dump_space_info_for_trans_abort()
[all …]
H A Dspace-info.h227 return ((space_info->flags & BTRFS_BLOCK_GROUP_METADATA) && in btrfs_mixed_space_info()
228 (space_info->flags & BTRFS_BLOCK_GROUP_DATA)); in btrfs_mixed_space_info()
273 struct btrfs_space_info *space_info,
277 struct btrfs_space_info *space_info);
279 const struct btrfs_space_info *space_info, u64 bytes,
283 struct btrfs_space_info *space_info, in btrfs_space_info_free_bytes_may_use() argument
286 spin_lock(&space_info->lock); in btrfs_space_info_free_bytes_may_use()
287 btrfs_space_info_update_bytes_may_use(space_info, -num_bytes); in btrfs_space_info_free_bytes_may_use()
288 btrfs_try_granting_tickets(space_info->fs_info, space_info); in btrfs_space_info_free_bytes_may_use()
289 spin_unlock(&space_info->lock); in btrfs_space_info_free_bytes_may_use()
[all …]
H A Dblock-rsv.c109 struct btrfs_space_info *space_info = block_rsv->space_info; in block_rsv_release_bytes() local
186 rsv->space_info = btrfs_find_space_info(fs_info, in btrfs_init_metadata_block_rsv()
289 if (target && block_rsv->space_info != target->space_info) in btrfs_block_rsv_release()
429 struct btrfs_space_info *space_info; in btrfs_init_global_block_rsv() local
432 fs_info->chunk_block_rsv.space_info = space_info; in btrfs_init_global_block_rsv()
435 fs_info->global_block_rsv.space_info = space_info; in btrfs_init_global_block_rsv()
436 fs_info->trans_block_rsv.space_info = space_info; in btrfs_init_global_block_rsv()
437 fs_info->empty_block_rsv.space_info = space_info; in btrfs_init_global_block_rsv()
438 fs_info->delayed_block_rsv.space_info = space_info; in btrfs_init_global_block_rsv()
439 fs_info->delayed_refs_rsv.space_info = space_info; in btrfs_init_global_block_rsv()
[all …]
H A Dblock-group.c379 struct btrfs_space_info *space_info = bg->space_info; in btrfs_wait_block_group_reservations() local
1520 space_info = block_group->space_info; in btrfs_delete_unused_bgs()
1859 space_info = bg->space_info; in btrfs_reclaim_bgs_work()
2588 list_for_each_entry(space_info, &info->space_info, list) { in btrfs_read_block_groups()
3694 space_info = cache->space_info; in btrfs_update_block_group()
3791 struct btrfs_space_info *space_info = cache->space_info; in btrfs_add_reserved_bytes() local
3843 struct btrfs_space_info *space_info = cache->space_info; in btrfs_free_reserved_bytes() local
4152 ASSERT(space_info); in btrfs_chunk_alloc()
4159 if (space_info->full) { in btrfs_chunk_alloc()
4233 space_info->full = 1; in btrfs_chunk_alloc()
[all …]
H A Dsysfs.c913 spin_lock(&space_info->lock); in btrfs_sinfo_bg_reclaim_threshold_show()
915 spin_unlock(&space_info->lock); in btrfs_sinfo_bg_reclaim_threshold_show()
1041 ATTRIBUTE_GROUPS(space_info);
1852 struct btrfs_space_info *space_info = cache->space_info; in btrfs_sysfs_add_block_group_type() local
1887 spin_lock(&space_info->lock); in btrfs_sysfs_add_block_group_type()
1889 spin_unlock(&space_info->lock); in btrfs_sysfs_add_block_group_type()
1895 spin_unlock(&space_info->lock); in btrfs_sysfs_add_block_group_type()
1901 spin_lock(&space_info->lock); in btrfs_sysfs_add_block_group_type()
1903 spin_unlock(&space_info->lock); in btrfs_sysfs_add_block_group_type()
1929 kobject_del(&space_info->kobj); in btrfs_sysfs_remove_space_info()
[all …]
H A Dsysfs.h41 struct btrfs_space_info *space_info);
42 void btrfs_sysfs_remove_space_info(struct btrfs_space_info *space_info);
H A Dextent-tree.c2763 cache->space_info, in unpin_extent_range()
2776 space_info = cache->space_info; in unpin_extent_range()
2791 spin_lock(&space_info->lock); in unpin_extent_range()
3812 struct btrfs_space_info *space_info = block_group->space_info; in do_allocation_zoned() local
3873 spin_lock(&space_info->lock); in do_allocation_zoned()
4236 spin_lock(&space_info->lock); in prepare_allocation_clustered()
4315 space_info, ins); in prepare_allocation()
4388 if (!space_info) { in find_free_extent()
4592 spin_lock(&space_info->lock); in find_free_extent()
4971 space_info = block_group->space_info; in btrfs_alloc_logged_file_extent()
[all …]
H A Dzoned.h97 struct btrfs_space_info *space_info, bool do_finish);
99 int btrfs_reset_unused_block_groups(struct btrfs_space_info *space_info, u64 num_bytes);
260 struct btrfs_space_info *space_info, in btrfs_zoned_activate_one_bg() argument
269 static inline int btrfs_reset_unused_block_groups(struct btrfs_space_info *space_info, in btrfs_reset_unused_block_groups() argument
H A Ddelayed-ref.c214 struct btrfs_space_info *space_info = block_rsv->space_info; in btrfs_delayed_refs_rsv_refill() local
231 ret = btrfs_reserve_metadata_bytes(fs_info, space_info, num_bytes, flush); in btrfs_delayed_refs_rsv_refill()
260 btrfs_space_info_free_bytes_may_use(space_info, to_free); in btrfs_delayed_refs_rsv_refill()
1302 spin_lock(&bg->space_info->lock); in btrfs_destroy_delayed_refs()
1305 btrfs_space_info_update_bytes_pinned(bg->space_info, in btrfs_destroy_delayed_refs()
1308 bg->space_info->bytes_reserved -= head->num_bytes; in btrfs_destroy_delayed_refs()
1310 spin_unlock(&bg->space_info->lock); in btrfs_destroy_delayed_refs()
H A Dzoned.c2576 struct btrfs_space_info *space_info, in btrfs_zoned_activate_one_bg() argument
2589 down_read(&space_info->groups_sem); in btrfs_zoned_activate_one_bg()
2591 list_for_each_entry(bg, &space_info->block_groups[index], in btrfs_zoned_activate_one_bg()
2604 up_read(&space_info->groups_sem); in btrfs_zoned_activate_one_bg()
2611 up_read(&space_info->groups_sem); in btrfs_zoned_activate_one_bg()
2695 struct btrfs_fs_info *fs_info = space_info->fs_info; in btrfs_reset_unused_block_groups()
2771 spin_lock(&space_info->lock); in btrfs_reset_unused_block_groups()
2776 spin_unlock(&space_info->lock); in btrfs_reset_unused_block_groups()
2789 space_info->bytes_zone_unusable -= reclaimed; in btrfs_reset_unused_block_groups()
2791 btrfs_return_free_space(space_info, reclaimed); in btrfs_reset_unused_block_groups()
[all …]
H A Dblock-rsv.h34 struct btrfs_space_info *space_info; member
H A Dblock-group.h168 struct btrfs_space_info *space_info; member
H A Dfree-space-cache.c2698 struct btrfs_space_info *sinfo = block_group->space_info; in __btrfs_add_free_space_zoned()
3657 struct btrfs_space_info *space_info = block_group->space_info; in do_trimming() local
3667 spin_lock(&space_info->lock); in do_trimming()
3671 space_info->bytes_reserved += reserved_bytes; in do_trimming()
3675 spin_unlock(&space_info->lock); in do_trimming()
3696 spin_lock(&space_info->lock); in do_trimming()
3699 space_info->bytes_readonly += reserved_bytes; in do_trimming()
3701 space_info->bytes_reserved -= reserved_bytes; in do_trimming()
3703 spin_unlock(&space_info->lock); in do_trimming()
H A Ddelalloc-space.c351 ret = btrfs_reserve_metadata_bytes(fs_info, block_rsv->space_info, in btrfs_delalloc_reserve_metadata()
H A Dtransaction.c570 struct btrfs_space_info *si = fs_info->trans_block_rsv.space_info; in btrfs_reserve_trans_metadata()
666 if (trans_rsv->space_info->force_alloc) in start_transaction()
764 u64 flags = h->block_rsv->space_info->flags; in start_transaction()
806 btrfs_space_info_free_bytes_may_use(trans_rsv->space_info, delayed_refs_bytes); in start_transaction()
H A Droot-tree.c530 rsv->space_info = btrfs_find_space_info(fs_info, in btrfs_subvolume_reserve_metadata()
H A Dfs.h672 struct list_head space_info; member
H A Dsuper.c1733 list_for_each_entry(found, &fs_info->space_info, list) { in btrfs_statfs()
1804 if (!mixed && block_rsv->space_info->full && in btrfs_statfs()
H A Dvolumes.c5136 struct btrfs_space_info *space_info; in init_alloc_chunk_ctl_policy_regular() local
5138 space_info = btrfs_find_space_info(fs_devices->fs_info, ctl->type); in init_alloc_chunk_ctl_policy_regular()
5139 ASSERT(space_info); in init_alloc_chunk_ctl_policy_regular()
5141 ctl->max_chunk_size = READ_ONCE(space_info->chunk_size); in init_alloc_chunk_ctl_policy_regular()
H A Dtree-log.c2555 spin_lock(&cache->space_info->lock); in unaccount_log_buffer()
2558 cache->space_info->bytes_reserved -= fs_info->nodesize; in unaccount_log_buffer()
2560 spin_unlock(&cache->space_info->lock); in unaccount_log_buffer()
H A Dioctl.c2984 list_for_each_entry(tmp, &fs_info->space_info, list) { in btrfs_ioctl_space_info()
3037 list_for_each_entry(tmp, &fs_info->space_info, list) { in btrfs_ioctl_space_info()
H A Ddisk-io.c2816 INIT_LIST_HEAD(&fs_info->space_info); in btrfs_init_fs_info()