Lines Matching refs:bg

281 	struct btrfs_block_group *bg;  in btrfs_inc_nocow_writers()  local
284 bg = btrfs_lookup_block_group(fs_info, bytenr); in btrfs_inc_nocow_writers()
285 if (!bg) in btrfs_inc_nocow_writers()
288 spin_lock(&bg->lock); in btrfs_inc_nocow_writers()
289 if (bg->ro) in btrfs_inc_nocow_writers()
292 atomic_inc(&bg->nocow_writers); in btrfs_inc_nocow_writers()
293 spin_unlock(&bg->lock); in btrfs_inc_nocow_writers()
297 btrfs_put_block_group(bg); in btrfs_inc_nocow_writers()
304 struct btrfs_block_group *bg; in btrfs_dec_nocow_writers() local
306 bg = btrfs_lookup_block_group(fs_info, bytenr); in btrfs_dec_nocow_writers()
307 ASSERT(bg); in btrfs_dec_nocow_writers()
308 if (atomic_dec_and_test(&bg->nocow_writers)) in btrfs_dec_nocow_writers()
309 wake_up_var(&bg->nocow_writers); in btrfs_dec_nocow_writers()
314 btrfs_put_block_group(bg); in btrfs_dec_nocow_writers()
315 btrfs_put_block_group(bg); in btrfs_dec_nocow_writers()
318 void btrfs_wait_nocow_writers(struct btrfs_block_group *bg) in btrfs_wait_nocow_writers() argument
320 wait_var_event(&bg->nocow_writers, !atomic_read(&bg->nocow_writers)); in btrfs_wait_nocow_writers()
326 struct btrfs_block_group *bg; in btrfs_dec_block_group_reservations() local
328 bg = btrfs_lookup_block_group(fs_info, start); in btrfs_dec_block_group_reservations()
329 ASSERT(bg); in btrfs_dec_block_group_reservations()
330 if (atomic_dec_and_test(&bg->reservations)) in btrfs_dec_block_group_reservations()
331 wake_up_var(&bg->reservations); in btrfs_dec_block_group_reservations()
332 btrfs_put_block_group(bg); in btrfs_dec_block_group_reservations()
335 void btrfs_wait_block_group_reservations(struct btrfs_block_group *bg) in btrfs_wait_block_group_reservations() argument
337 struct btrfs_space_info *space_info = bg->space_info; in btrfs_wait_block_group_reservations()
339 ASSERT(bg->ro); in btrfs_wait_block_group_reservations()
341 if (!(bg->flags & BTRFS_BLOCK_GROUP_DATA)) in btrfs_wait_block_group_reservations()
357 wait_var_event(&bg->reservations, !atomic_read(&bg->reservations)); in btrfs_wait_block_group_reservations()
1290 struct btrfs_block_group *bg) in clean_pinned_extents() argument
1292 struct btrfs_fs_info *fs_info = bg->fs_info; in clean_pinned_extents()
1294 const u64 start = bg->start; in clean_pinned_extents()
1295 const u64 end = start + bg->length - 1; in clean_pinned_extents()
1527 void btrfs_mark_bg_unused(struct btrfs_block_group *bg) in btrfs_mark_bg_unused() argument
1529 struct btrfs_fs_info *fs_info = bg->fs_info; in btrfs_mark_bg_unused()
1532 if (list_empty(&bg->bg_list)) { in btrfs_mark_bg_unused()
1533 btrfs_get_block_group(bg); in btrfs_mark_bg_unused()
1534 trace_btrfs_add_unused_block_group(bg); in btrfs_mark_bg_unused()
1535 list_add_tail(&bg->bg_list, &fs_info->unused_bgs); in btrfs_mark_bg_unused()
1545 struct btrfs_block_group_item bg; in read_bg_from_eb() local
1573 read_extent_buffer(leaf, &bg, btrfs_item_ptr_offset(leaf, slot), in read_bg_from_eb()
1574 sizeof(bg)); in read_bg_from_eb()
1575 flags = btrfs_stack_block_group_flags(&bg) & in read_bg_from_eb()
1835 struct btrfs_block_group *bg; in check_chunk_block_group_mappings() local
1851 bg = btrfs_lookup_block_group(fs_info, em->start); in check_chunk_block_group_mappings()
1852 if (!bg) { in check_chunk_block_group_mappings()
1860 if (bg->start != em->start || bg->length != em->len || in check_chunk_block_group_mappings()
1861 (bg->flags & BTRFS_BLOCK_GROUP_TYPE_MASK) != in check_chunk_block_group_mappings()
1867 bg->start, bg->length, in check_chunk_block_group_mappings()
1868 bg->flags & BTRFS_BLOCK_GROUP_TYPE_MASK); in check_chunk_block_group_mappings()
1871 btrfs_put_block_group(bg); in check_chunk_block_group_mappings()
1876 btrfs_put_block_group(bg); in check_chunk_block_group_mappings()
3438 bool btrfs_inc_block_group_swap_extents(struct btrfs_block_group *bg) in btrfs_inc_block_group_swap_extents() argument
3442 spin_lock(&bg->lock); in btrfs_inc_block_group_swap_extents()
3443 if (bg->ro) in btrfs_inc_block_group_swap_extents()
3446 bg->swap_extents++; in btrfs_inc_block_group_swap_extents()
3447 spin_unlock(&bg->lock); in btrfs_inc_block_group_swap_extents()
3452 void btrfs_dec_block_group_swap_extents(struct btrfs_block_group *bg, int amount) in btrfs_dec_block_group_swap_extents() argument
3454 spin_lock(&bg->lock); in btrfs_dec_block_group_swap_extents()
3455 ASSERT(!bg->ro); in btrfs_dec_block_group_swap_extents()
3456 ASSERT(bg->swap_extents >= amount); in btrfs_dec_block_group_swap_extents()
3457 bg->swap_extents -= amount; in btrfs_dec_block_group_swap_extents()
3458 spin_unlock(&bg->lock); in btrfs_dec_block_group_swap_extents()