Lines Matching refs:bitmap_info
52 struct btrfs_free_space *bitmap_info, u64 *offset,
55 struct btrfs_free_space *bitmap_info);
1955 struct btrfs_free_space *bitmap_info, u64 *offset, in search_bitmap() argument
1969 bitmap_info->max_extent_size && in search_bitmap()
1970 bitmap_info->max_extent_size < *bytes) { in search_bitmap()
1971 *bytes = bitmap_info->max_extent_size; in search_bitmap()
1975 i = offset_to_bit(bitmap_info->offset, ctl->unit, in search_bitmap()
1976 max_t(u64, *offset, bitmap_info->offset)); in search_bitmap()
1979 for_each_set_bit_from(i, bitmap_info->bitmap, BITS_PER_BITMAP) { in search_bitmap()
1984 next_zero = find_next_zero_bit(bitmap_info->bitmap, in search_bitmap()
1997 *offset = (u64)(i * ctl->unit) + bitmap_info->offset; in search_bitmap()
2003 bitmap_info->max_extent_size = *bytes; in search_bitmap()
2004 relink_bitmap_entry(ctl, bitmap_info); in search_bitmap()
2129 struct btrfs_free_space *bitmap_info) in free_bitmap() argument
2137 if (bitmap_info->bytes && !btrfs_free_space_trimmed(bitmap_info)) { in free_bitmap()
2139 bitmap_info->bitmap_extents; in free_bitmap()
2140 ctl->discardable_bytes[BTRFS_STAT_CURR] -= bitmap_info->bytes; in free_bitmap()
2143 unlink_free_space(ctl, bitmap_info, true); in free_bitmap()
2144 kmem_cache_free(btrfs_free_space_bitmap_cachep, bitmap_info->bitmap); in free_bitmap()
2145 kmem_cache_free(btrfs_free_space_cachep, bitmap_info); in free_bitmap()
2151 struct btrfs_free_space *bitmap_info, in remove_from_bitmap() argument
2159 end = bitmap_info->offset + (u64)(BITS_PER_BITMAP * ctl->unit) - 1; in remove_from_bitmap()
2170 ret = search_bitmap(ctl, bitmap_info, &search_start, &search_bytes, in remove_from_bitmap()
2181 bitmap_clear_bits(ctl, bitmap_info, search_start, search_bytes, true); in remove_from_bitmap()
2186 struct rb_node *next = rb_next(&bitmap_info->offset_index); in remove_from_bitmap()
2187 if (!bitmap_info->bytes) in remove_from_bitmap()
2188 free_bitmap(ctl, bitmap_info); in remove_from_bitmap()
2197 bitmap_info = rb_entry(next, struct btrfs_free_space, in remove_from_bitmap()
2204 if (!bitmap_info->bitmap) in remove_from_bitmap()
2215 ret = search_bitmap(ctl, bitmap_info, &search_start, in remove_from_bitmap()
2221 } else if (!bitmap_info->bytes) in remove_from_bitmap()
2222 free_bitmap(ctl, bitmap_info); in remove_from_bitmap()
2314 struct btrfs_free_space *bitmap_info; in insert_into_bitmap() local
2371 bitmap_info = tree_search_offset(ctl, offset_to_bitmap(ctl, offset), in insert_into_bitmap()
2373 if (!bitmap_info) { in insert_into_bitmap()
2378 bytes_added = add_bytes_to_bitmap(ctl, bitmap_info, offset, bytes, in insert_into_bitmap()
4194 struct btrfs_free_space *info = NULL, *bitmap_info; in test_add_free_space_entry() local
4228 bitmap_info = tree_search_offset(ctl, offset_to_bitmap(ctl, offset), in test_add_free_space_entry()
4230 if (!bitmap_info) { in test_add_free_space_entry()
4234 bitmap_info = info; in test_add_free_space_entry()
4238 bytes_added = add_bytes_to_bitmap(ctl, bitmap_info, offset, bytes, in test_add_free_space_entry()