Lines Matching refs:space_info

344 	struct btrfs_space_info *space_info = bg->space_info;
361 down_write(&space_info->groups_sem);
362 up_write(&space_info->groups_sem);
671 spin_lock(&block_group->space_info->lock);
674 block_group->space_info->bytes_used += bytes_used >> 1;
676 spin_unlock(&block_group->space_info->lock);
775 spin_lock(&cache->space_info->lock);
778 cache->space_info->bytes_used += bytes_used >> 1;
780 spin_unlock(&cache->space_info->lock);
857 struct list_head *head = &fs_info->space_info;
1038 down_write(&block_group->space_info->groups_sem);
1044 if (list_empty(&block_group->space_info->block_groups[index])) {
1045 kobj = block_group->space_info->block_group_kobjs[index];
1046 block_group->space_info->block_group_kobjs[index] = NULL;
1049 up_write(&block_group->space_info->groups_sem);
1090 spin_lock(&block_group->space_info->lock);
1094 WARN_ON(block_group->space_info->total_bytes
1096 WARN_ON(block_group->space_info->bytes_readonly
1098 WARN_ON(block_group->space_info->disk_total
1101 block_group->space_info->total_bytes -= block_group->length;
1102 block_group->space_info->bytes_readonly -= block_group->length;
1103 block_group->space_info->disk_total -= block_group->length * factor;
1105 spin_unlock(&block_group->space_info->lock);
1232 struct btrfs_space_info *sinfo = cache->space_info;
1291 btrfs_dump_space_info(cache->fs_info, cache->space_info, 0, 0);
1348 struct btrfs_space_info *space_info;
1365 space_info = block_group->space_info;
1367 if (ret || btrfs_mixed_space_info(space_info)) {
1378 down_write(&space_info->groups_sem);
1388 up_write(&space_info->groups_sem);
1407 up_write(&space_info->groups_sem);
1414 up_write(&space_info->groups_sem);
1459 spin_lock(&space_info->lock);
1462 btrfs_space_info_update_bytes_pinned(fs_info, space_info,
1464 space_info->bytes_readonly += block_group->pinned;
1465 __btrfs_mod_total_bytes_pinned(space_info, -block_group->pinned);
1469 spin_unlock(&space_info->lock);
1785 struct btrfs_space_info *space_info = cache->space_info;
1788 down_write(&space_info->groups_sem);
1789 list_add_tail(&cache->list, &space_info->block_groups[index]);
1790 up_write(&space_info->groups_sem);
1910 struct btrfs_space_info *space_info;
1984 cache->used, cache->bytes_super, &space_info);
1986 cache->space_info = space_info;
2011 struct btrfs_space_info *space_info;
2047 list_for_each_entry(space_info, &info->space_info, list) {
2051 if (list_empty(&space_info->block_groups[i]))
2053 cache = list_first_entry(&space_info->block_groups[i],
2059 if (!(btrfs_get_alloc_profile(info, space_info->flags) &
2070 &space_info->block_groups[BTRFS_RAID_RAID0],
2074 &space_info->block_groups[BTRFS_RAID_SINGLE],
2143 if (block_group->space_info->block_group_kobjs[index] == NULL)
2195 * Ensure the corresponding space_info object is created and
2197 * with its ->space_info set.
2199 cache->space_info = btrfs_find_space_info(fs_info, cache->flags);
2200 ASSERT(cache->space_info);
2210 * Now that our block group has its ->space_info set and is inserted in
2215 cache->bytes_super, &cache->space_info);
2303 alloc_flags = btrfs_get_alloc_profile(fs_info, cache->space_info->flags);
2326 struct btrfs_space_info *sinfo = cache->space_info;
2911 spin_lock(&cache->space_info->lock);
2924 cache->space_info->bytes_reserved -= num_bytes;
2925 cache->space_info->bytes_used += num_bytes;
2926 cache->space_info->disk_used += num_bytes * factor;
2928 spin_unlock(&cache->space_info->lock);
2934 cache->space_info, num_bytes);
2935 cache->space_info->bytes_used -= num_bytes;
2936 cache->space_info->disk_used -= num_bytes * factor;
2938 spin_unlock(&cache->space_info->lock);
2940 __btrfs_mod_total_bytes_pinned(cache->space_info,
2992 struct btrfs_space_info *space_info = cache->space_info;
2995 spin_lock(&space_info->lock);
3001 space_info->bytes_reserved += num_bytes;
3002 trace_btrfs_space_reservation(cache->fs_info, "space_info",
3003 space_info->flags, num_bytes, 1);
3005 space_info, -ram_bytes);
3014 btrfs_try_granting_tickets(cache->fs_info, space_info);
3017 spin_unlock(&space_info->lock);
3035 struct btrfs_space_info *space_info = cache->space_info;
3037 spin_lock(&space_info->lock);
3040 space_info->bytes_readonly += num_bytes;
3042 space_info->bytes_reserved -= num_bytes;
3043 space_info->max_extent_size = 0;
3049 btrfs_try_granting_tickets(cache->fs_info, space_info);
3050 spin_unlock(&space_info->lock);
3055 struct list_head *head = &info->space_info;
3110 struct btrfs_space_info *space_info;
3119 space_info = btrfs_find_space_info(fs_info, flags);
3120 ASSERT(space_info);
3123 spin_lock(&space_info->lock);
3124 if (force < space_info->force_alloc)
3125 force = space_info->force_alloc;
3126 should_alloc = should_alloc_chunk(fs_info, space_info, force);
3127 if (space_info->full) {
3133 spin_unlock(&space_info->lock);
3136 spin_unlock(&space_info->lock);
3138 } else if (space_info->chunk_alloc) {
3147 spin_unlock(&space_info->lock);
3152 space_info->chunk_alloc = 1;
3154 spin_unlock(&space_info->lock);
3167 if (btrfs_mixed_space_info(space_info))
3191 spin_lock(&space_info->lock);
3194 space_info->full = 1;
3199 space_info->max_extent_size = 0;
3202 space_info->force_alloc = CHUNK_ALLOC_NO_FORCE;
3204 space_info->chunk_alloc = 0;
3205 spin_unlock(&space_info->lock);
3337 struct btrfs_space_info *space_info;
3369 down_write(&block_group->space_info->groups_sem);
3371 up_write(&block_group->space_info->groups_sem);
3396 while (!list_empty(&info->space_info)) {
3397 space_info = list_entry(info->space_info.next,
3405 if (WARN_ON(space_info->bytes_pinned > 0 ||
3406 space_info->bytes_reserved > 0 ||
3407 space_info->bytes_may_use > 0))
3408 btrfs_dump_space_info(info, space_info, 0, 0);
3409 WARN_ON(space_info->reclaim_size > 0);
3410 list_del(&space_info->list);
3411 btrfs_sysfs_remove_space_info(space_info);