• Home
  • Raw
  • Download

Lines Matching refs:root

61 	struct btrfs_root *root;  member
228 btrfs_page_clamp_clear_ordered(inode->root->fs_info, page, in btrfs_cleanup_ordered_extents()
289 struct btrfs_root *root = inode->root; in insert_inline_extent() local
314 ret = btrfs_insert_empty_item(trans, root, path, &key, in insert_inline_extent()
363 ALIGN(size, root->fs_info->sectorsize)); in insert_inline_extent()
398 struct btrfs_root *root = inode->root; in cow_file_range_inline() local
399 struct btrfs_fs_info *fs_info = root->fs_info; in cow_file_range_inline()
421 trans = btrfs_join_transaction(root); in cow_file_range_inline()
434 ret = btrfs_drop_extents(trans, root, inode, &drop_args); in cow_file_range_inline()
452 ret = btrfs_update_inode(trans, root, inode); in cow_file_range_inline()
530 struct btrfs_fs_info *fs_info = inode->root->fs_info; in inode_need_compress()
937 btrfs_page_set_error(inode->root->fs_info, locked_page, in submit_uncompressed_range()
960 struct btrfs_root *root = inode->root; in submit_one_async_extent() local
961 struct btrfs_fs_info *fs_info = root->fs_info; in submit_one_async_extent()
986 ret = btrfs_reserve_extent(root, async_extent->ram_size, in submit_one_async_extent()
1080 struct btrfs_fs_info *fs_info = inode->root->fs_info; in submit_compressed_extents()
1099 inode->root->root_key.objectid, in submit_compressed_extents()
1177 struct btrfs_root *root = inode->root; in cow_file_range() local
1178 struct btrfs_fs_info *fs_info = root->fs_info; in cow_file_range()
1269 if (btrfs_is_data_reloc_root(root)) in cow_file_range()
1276 ret = btrfs_reserve_extent(root, cur_alloc_size, cur_alloc_size, in cow_file_range()
1306 if (btrfs_is_data_reloc_root(root)) { in cow_file_range()
1515 struct btrfs_fs_info *fs_info = inode->root->fs_info; in cow_file_range_async()
1647 wait_on_bit_io(&inode->root->fs_info->flags, in run_delalloc_zoned()
1697 const bool is_reloc_ino = btrfs_is_data_reloc_root(inode->root); in fallback_to_cow()
1739 struct btrfs_fs_info *fs_info = inode->root->fs_info; in fallback_to_cow()
1798 struct btrfs_root *root = inode->root; in can_nocow_file_extent() local
1828 btrfs_root_last_snapshot(&root->root_item)) in can_nocow_file_extent()
1850 ret = btrfs_cross_ref_exist(root, btrfs_ino(inode), in can_nocow_file_extent()
1870 atomic_read(&root->snapshot_force_cow)) in can_nocow_file_extent()
1881 ret = csum_exist_in_range(root->fs_info, args->disk_bytenr, args->num_bytes, in can_nocow_file_extent()
1908 struct btrfs_fs_info *fs_info = inode->root->fs_info; in run_delalloc_nocow()
1909 struct btrfs_root *root = inode->root; in run_delalloc_nocow() local
1945 ret = btrfs_lookup_file_extent(NULL, root, path, ino, in run_delalloc_nocow()
1968 ret = btrfs_next_leaf(root, path); in run_delalloc_nocow()
2127 if (btrfs_is_data_reloc_root(root)) in run_delalloc_nocow()
2203 const bool zoned = btrfs_is_zoned(inode->root->fs_info); in btrfs_run_delalloc_range()
2220 ASSERT(!zoned || btrfs_is_data_reloc_root(inode->root)); in btrfs_run_delalloc_range()
2334 static void btrfs_add_delalloc_inodes(struct btrfs_root *root, in btrfs_add_delalloc_inodes() argument
2339 spin_lock(&root->delalloc_lock); in btrfs_add_delalloc_inodes()
2342 &root->delalloc_inodes); in btrfs_add_delalloc_inodes()
2345 root->nr_delalloc_inodes++; in btrfs_add_delalloc_inodes()
2346 if (root->nr_delalloc_inodes == 1) { in btrfs_add_delalloc_inodes()
2348 BUG_ON(!list_empty(&root->delalloc_root)); in btrfs_add_delalloc_inodes()
2349 list_add_tail(&root->delalloc_root, in btrfs_add_delalloc_inodes()
2354 spin_unlock(&root->delalloc_lock); in btrfs_add_delalloc_inodes()
2358 void __btrfs_del_delalloc_inode(struct btrfs_root *root, in __btrfs_del_delalloc_inode() argument
2361 struct btrfs_fs_info *fs_info = root->fs_info; in __btrfs_del_delalloc_inode()
2367 root->nr_delalloc_inodes--; in __btrfs_del_delalloc_inode()
2368 if (!root->nr_delalloc_inodes) { in __btrfs_del_delalloc_inode()
2369 ASSERT(list_empty(&root->delalloc_inodes)); in __btrfs_del_delalloc_inode()
2371 BUG_ON(list_empty(&root->delalloc_root)); in __btrfs_del_delalloc_inode()
2372 list_del_init(&root->delalloc_root); in __btrfs_del_delalloc_inode()
2378 static void btrfs_del_delalloc_inode(struct btrfs_root *root, in btrfs_del_delalloc_inode() argument
2381 spin_lock(&root->delalloc_lock); in btrfs_del_delalloc_inode()
2382 __btrfs_del_delalloc_inode(root, inode); in btrfs_del_delalloc_inode()
2383 spin_unlock(&root->delalloc_lock); in btrfs_del_delalloc_inode()
2403 struct btrfs_root *root = BTRFS_I(inode)->root; in btrfs_set_delalloc_extent() local
2424 btrfs_add_delalloc_inodes(root, inode); in btrfs_set_delalloc_extent()
2461 struct btrfs_root *root = inode->root; in btrfs_clear_delalloc_extent() local
2474 root != fs_info->tree_root) in btrfs_clear_delalloc_extent()
2481 if (!btrfs_is_data_reloc_root(root) && in btrfs_clear_delalloc_extent()
2493 btrfs_del_delalloc_inode(root, inode); in btrfs_clear_delalloc_extent()
2722 !btrfs_is_data_reloc_root(bi->root)) { in btrfs_submit_data_write_bio()
2981 btrfs_page_clear_checked(inode->root->fs_info, page, page_start, PAGE_SIZE); in btrfs_writepage_fixup_worker()
3052 struct btrfs_root *root = inode->root; in insert_reserved_file_extent() local
3053 const u64 sectorsize = root->fs_info->sectorsize; in insert_reserved_file_extent()
3083 ret = btrfs_drop_extents(trans, root, inode, &drop_args); in insert_reserved_file_extent()
3092 ret = btrfs_insert_empty_item(trans, root, path, &ins, in insert_reserved_file_extent()
3133 ret = btrfs_alloc_reserved_file_extent(trans, root, btrfs_ino(inode), in insert_reserved_file_extent()
3203 struct btrfs_root *root = inode->root; in btrfs_finish_ordered_io() local
3204 struct btrfs_fs_info *fs_info = root->fs_info; in btrfs_finish_ordered_io()
3240 } else if (btrfs_is_data_reloc_root(inode->root)) { in btrfs_finish_ordered_io()
3260 trans = btrfs_join_transaction_spacecache(root); in btrfs_finish_ordered_io()
3262 trans = btrfs_join_transaction(root); in btrfs_finish_ordered_io()
3269 ret = btrfs_update_inode_fallback(trans, root, inode); in btrfs_finish_ordered_io()
3279 trans = btrfs_join_transaction_spacecache(root); in btrfs_finish_ordered_io()
3281 trans = btrfs_join_transaction(root); in btrfs_finish_ordered_io()
3301 BUG_ON(root == fs_info->tree_root); in btrfs_finish_ordered_io()
3335 ret = btrfs_update_inode_fallback(trans, root, inode); in btrfs_finish_ordered_io()
3415 btrfs_qgroup_free_refroot(fs_info, inode->root->root_key.objectid, in btrfs_finish_ordered_io()
3533 struct btrfs_root *root = BTRFS_I(inode)->root; in btrfs_verify_data_csum() local
3534 const u32 sectorsize = root->fs_info->sectorsize; in btrfs_verify_data_csum()
3560 if (btrfs_is_data_reloc_root(root) && in btrfs_verify_data_csum()
3573 root->fs_info->sectorsize_bits; in btrfs_verify_data_csum()
3675 ret = btrfs_insert_orphan_item(trans, inode->root, btrfs_ino(inode)); in btrfs_orphan_add()
3691 return btrfs_del_orphan_item(trans, inode->root, btrfs_ino(inode)); in btrfs_orphan_del()
3698 int btrfs_orphan_cleanup(struct btrfs_root *root) in btrfs_orphan_cleanup() argument
3700 struct btrfs_fs_info *fs_info = root->fs_info; in btrfs_orphan_cleanup()
3709 if (test_and_set_bit(BTRFS_ROOT_ORPHAN_CLEANUP, &root->state)) in btrfs_orphan_cleanup()
3724 ret = btrfs_search_slot(NULL, root, &key, path, 0, 0); in btrfs_orphan_cleanup()
3771 inode = btrfs_iget(fs_info->sb, last_objectid, root); in btrfs_orphan_cleanup()
3776 if (ret == -ENOENT && root == fs_info->tree_root) { in btrfs_orphan_cleanup()
3844 trans = btrfs_start_transaction(root, 1); in btrfs_orphan_cleanup()
3851 ret = btrfs_del_orphan_item(trans, root, in btrfs_orphan_cleanup()
3867 if (test_bit(BTRFS_ROOT_ORPHAN_ITEM_INSERTED, &root->state)) { in btrfs_orphan_cleanup()
3868 trans = btrfs_join_transaction(root); in btrfs_orphan_cleanup()
3962 struct btrfs_root *root = BTRFS_I(inode)->root; in btrfs_read_locked_inode() local
3983 ret = btrfs_lookup_inode(NULL, root, path, &location, 0); in btrfs_read_locked_inode()
4120 root->root_key.objectid, ret); in btrfs_read_locked_inode()
4208 struct btrfs_root *root, in btrfs_update_inode_item() argument
4220 ret = btrfs_lookup_inode(trans, root, path, &inode->location, 1); in btrfs_update_inode_item()
4244 struct btrfs_root *root, in btrfs_update_inode() argument
4247 struct btrfs_fs_info *fs_info = root->fs_info; in btrfs_update_inode()
4258 && !btrfs_is_data_reloc_root(root) in btrfs_update_inode()
4260 btrfs_update_root_times(trans, root); in btrfs_update_inode()
4262 ret = btrfs_delayed_update_inode(trans, root, inode); in btrfs_update_inode()
4268 return btrfs_update_inode_item(trans, root, inode); in btrfs_update_inode()
4272 struct btrfs_root *root, struct btrfs_inode *inode) in btrfs_update_inode_fallback() argument
4276 ret = btrfs_update_inode(trans, root, inode); in btrfs_update_inode_fallback()
4278 return btrfs_update_inode_item(trans, root, inode); in btrfs_update_inode_fallback()
4293 struct btrfs_root *root = dir->root; in __btrfs_unlink_inode() local
4294 struct btrfs_fs_info *fs_info = root->fs_info; in __btrfs_unlink_inode()
4308 di = btrfs_lookup_dir_item(trans, root, path, dir_ino, name, -1); in __btrfs_unlink_inode()
4313 ret = btrfs_delete_one_dir_name(trans, root, path, di); in __btrfs_unlink_inode()
4336 ret = btrfs_del_inode_ref(trans, root, name, ino, dir_ino, &index); in __btrfs_unlink_inode()
4361 btrfs_del_inode_ref_in_log(trans, root, name, inode, dir_ino); in __btrfs_unlink_inode()
4362 btrfs_del_dir_entries_in_log(trans, root, name, dir, index); in __btrfs_unlink_inode()
4386 ret = btrfs_update_inode(trans, root, dir); in __btrfs_unlink_inode()
4400 ret = btrfs_update_inode(trans, inode->root, inode); in btrfs_unlink_inode()
4415 struct btrfs_root *root = BTRFS_I(dir)->root; in __unlink_start_trans() local
4425 return btrfs_start_transaction_fallback_global_rsv(root, 6); in __unlink_start_trans()
4463 btrfs_btree_balance_dirty(BTRFS_I(dir)->root->fs_info); in btrfs_unlink()
4472 struct btrfs_root *root = BTRFS_I(dir)->root; in btrfs_unlink_subvol() local
4491 objectid = inode->root->root_key.objectid; in btrfs_unlink_subvol()
4506 di = btrfs_lookup_dir_item(trans, root, path, dir_ino, in btrfs_unlink_subvol()
4516 ret = btrfs_delete_one_dir_name(trans, root, path, di); in btrfs_unlink_subvol()
4533 di = btrfs_search_dir_index_item(root, path, dir_ino, &fname.disk_name); in btrfs_unlink_subvol()
4549 root->root_key.objectid, dir_ino, in btrfs_unlink_subvol()
4567 ret = btrfs_update_inode_fallback(trans, root, BTRFS_I(dir)); in btrfs_unlink_subvol()
4580 static noinline int may_destroy_subvol(struct btrfs_root *root) in may_destroy_subvol() argument
4582 struct btrfs_fs_info *fs_info = root->fs_info; in may_destroy_subvol()
4600 if (key.objectid == root->root_key.objectid) { in may_destroy_subvol()
4610 key.objectid = root->root_key.objectid; in may_destroy_subvol()
4623 if (key.objectid == root->root_key.objectid && in may_destroy_subvol()
4633 static void btrfs_prune_dentries(struct btrfs_root *root) in btrfs_prune_dentries() argument
4635 struct btrfs_fs_info *fs_info = root->fs_info; in btrfs_prune_dentries()
4643 WARN_ON(btrfs_root_refs(&root->root_item) != 0); in btrfs_prune_dentries()
4645 spin_lock(&root->inode_lock); in btrfs_prune_dentries()
4647 node = root->inode_tree.rb_node; in btrfs_prune_dentries()
4675 spin_unlock(&root->inode_lock); in btrfs_prune_dentries()
4684 spin_lock(&root->inode_lock); in btrfs_prune_dentries()
4688 if (cond_resched_lock(&root->inode_lock)) in btrfs_prune_dentries()
4693 spin_unlock(&root->inode_lock); in btrfs_prune_dentries()
4699 struct btrfs_root *root = BTRFS_I(dir)->root; in btrfs_delete_subvolume() local
4701 struct btrfs_root *dest = BTRFS_I(inode)->root; in btrfs_delete_subvolume()
4727 root->root_key.objectid); in btrfs_delete_subvolume()
4746 ret = btrfs_subvolume_reserve_metadata(root, &block_rsv, 5, true); in btrfs_delete_subvolume()
4750 trans = btrfs_start_transaction(root, 0); in btrfs_delete_subvolume()
4813 btrfs_subvolume_release_metadata(root, &block_rsv); in btrfs_delete_subvolume()
4836 struct btrfs_fs_info *fs_info = BTRFS_I(inode)->root->fs_info; in btrfs_rmdir()
4918 struct btrfs_fs_info *fs_info = inode->root->fs_info; in btrfs_truncate_block()
5055 static int maybe_insert_hole(struct btrfs_root *root, struct btrfs_inode *inode, in maybe_insert_hole() argument
5058 struct btrfs_fs_info *fs_info = root->fs_info; in maybe_insert_hole()
5077 trans = btrfs_start_transaction(root, 3); in maybe_insert_hole()
5085 ret = btrfs_drop_extents(trans, root, inode, &drop_args); in maybe_insert_hole()
5092 ret = btrfs_insert_hole_extent(trans, root, btrfs_ino(inode), offset, len); in maybe_insert_hole()
5097 btrfs_update_inode(trans, root, inode); in maybe_insert_hole()
5111 struct btrfs_root *root = inode->root; in btrfs_cont_expand() local
5112 struct btrfs_fs_info *fs_info = root->fs_info; in btrfs_cont_expand()
5153 err = maybe_insert_hole(root, inode, cur_offset, in btrfs_cont_expand()
5204 struct btrfs_root *root = BTRFS_I(inode)->root; in btrfs_setsize() local
5233 btrfs_drew_write_lock(&root->snapshot_lock); in btrfs_setsize()
5236 btrfs_drew_write_unlock(&root->snapshot_lock); in btrfs_setsize()
5240 trans = btrfs_start_transaction(root, 1); in btrfs_setsize()
5242 btrfs_drew_write_unlock(&root->snapshot_lock); in btrfs_setsize()
5249 ret = btrfs_update_inode(trans, root, BTRFS_I(inode)); in btrfs_setsize()
5250 btrfs_drew_write_unlock(&root->snapshot_lock); in btrfs_setsize()
5300 struct btrfs_root *root = BTRFS_I(inode)->root; in btrfs_setattr() local
5303 if (btrfs_root_readonly(root)) in btrfs_setattr()
5406 static struct btrfs_trans_handle *evict_refill_and_join(struct btrfs_root *root, in evict_refill_and_join() argument
5409 struct btrfs_fs_info *fs_info = root->fs_info; in evict_refill_and_join()
5441 trans = btrfs_join_transaction(root); in evict_refill_and_join()
5458 struct btrfs_root *root = BTRFS_I(inode)->root; in btrfs_evict_inode() local
5464 if (!root) { in btrfs_evict_inode()
5473 ((btrfs_root_refs(&root->root_item) != 0 && in btrfs_evict_inode()
5474 root->root_key.objectid != BTRFS_ROOT_TREE_OBJECTID) || in btrfs_evict_inode()
5487 BUG_ON(btrfs_root_refs(&root->root_item) != 0 && in btrfs_evict_inode()
5488 root->root_key.objectid != BTRFS_ROOT_TREE_OBJECTID); in btrfs_evict_inode()
5524 trans = evict_refill_and_join(root, rsv); in btrfs_evict_inode()
5530 ret = btrfs_truncate_inode_items(trans, root, &control); in btrfs_evict_inode()
5549 trans = evict_refill_and_join(root, rsv); in btrfs_evict_inode()
5582 struct btrfs_root *root = BTRFS_I(dir)->root; in btrfs_inode_by_name() local
5596 di = btrfs_lookup_dir_item(NULL, root, path, btrfs_ino(BTRFS_I(dir)), in btrfs_inode_by_name()
5607 btrfs_warn(root->fs_info, in btrfs_inode_by_name()
5651 key.objectid = BTRFS_I(dir)->root->root_key.objectid; in fixup_tree_root_location()
5694 struct btrfs_root *root = BTRFS_I(inode)->root; in inode_tree_add() local
5704 spin_lock(&root->inode_lock); in inode_tree_add()
5705 p = &root->inode_tree.rb_node; in inode_tree_add()
5717 rb_replace_node(parent, new, &root->inode_tree); in inode_tree_add()
5719 spin_unlock(&root->inode_lock); in inode_tree_add()
5724 rb_insert_color(new, &root->inode_tree); in inode_tree_add()
5725 spin_unlock(&root->inode_lock); in inode_tree_add()
5730 struct btrfs_root *root = inode->root; in inode_tree_del() local
5733 spin_lock(&root->inode_lock); in inode_tree_del()
5735 rb_erase(&inode->rb_node, &root->inode_tree); in inode_tree_del()
5737 empty = RB_EMPTY_ROOT(&root->inode_tree); in inode_tree_del()
5739 spin_unlock(&root->inode_lock); in inode_tree_del()
5741 if (empty && btrfs_root_refs(&root->root_item) == 0) { in inode_tree_del()
5742 spin_lock(&root->inode_lock); in inode_tree_del()
5743 empty = RB_EMPTY_ROOT(&root->inode_tree); in inode_tree_del()
5744 spin_unlock(&root->inode_lock); in inode_tree_del()
5746 btrfs_add_dead_root(root); in inode_tree_del()
5759 BTRFS_I(inode)->root = btrfs_grab_root(args->root); in btrfs_init_locked_inode()
5760 BUG_ON(args->root && !BTRFS_I(inode)->root); in btrfs_init_locked_inode()
5762 if (args->root && args->root == args->root->fs_info->tree_root && in btrfs_init_locked_inode()
5774 args->root == BTRFS_I(inode)->root; in btrfs_find_actor()
5778 struct btrfs_root *root) in btrfs_iget_locked() argument
5782 unsigned long hashval = btrfs_inode_hash(ino, root); in btrfs_iget_locked()
5785 args.root = root; in btrfs_iget_locked()
5800 struct btrfs_root *root, struct btrfs_path *path) in btrfs_iget_path() argument
5804 inode = btrfs_iget_locked(s, ino, root); in btrfs_iget_path()
5831 struct inode *btrfs_iget(struct super_block *s, u64 ino, struct btrfs_root *root) in btrfs_iget() argument
5833 return btrfs_iget_path(s, ino, root, NULL); in btrfs_iget()
5838 struct btrfs_root *root) in new_simple_dir() argument
5845 BTRFS_I(inode)->root = btrfs_grab_root(root); in new_simple_dir()
5884 struct btrfs_root *root = BTRFS_I(dir)->root; in btrfs_lookup_dentry() local
5885 struct btrfs_root *sub_root = root; in btrfs_lookup_dentry()
5898 inode = btrfs_iget(dir->i_sb, location.objectid, root); in btrfs_lookup_dentry()
5920 inode = new_simple_dir(dir->i_sb, &location, root); in btrfs_lookup_dentry()
5943 struct btrfs_root *root; in btrfs_dentry_delete() local
5950 root = BTRFS_I(inode)->root; in btrfs_dentry_delete()
5951 if (btrfs_root_refs(&root->root_item) == 0) in btrfs_dentry_delete()
5976 struct btrfs_root *root = inode->root; in btrfs_set_inode_index_count() local
5990 ret = btrfs_search_slot(NULL, root, &key, path, 0, 0); in btrfs_set_inode_index_count()
6115 struct btrfs_root *root = BTRFS_I(inode)->root; in btrfs_real_readdir() local
6152 btrfs_for_each_slot(root, &key, &found_key, path, ret) { in btrfs_real_readdir()
6247 struct btrfs_root *root = BTRFS_I(inode)->root; in btrfs_dirty_inode() local
6254 trans = btrfs_join_transaction(root); in btrfs_dirty_inode()
6258 ret = btrfs_update_inode(trans, root, BTRFS_I(inode)); in btrfs_dirty_inode()
6262 trans = btrfs_start_transaction(root, 1); in btrfs_dirty_inode()
6266 ret = btrfs_update_inode(trans, root, BTRFS_I(inode)); in btrfs_dirty_inode()
6282 struct btrfs_root *root = BTRFS_I(inode)->root; in btrfs_update_time() local
6285 if (btrfs_root_readonly(root)) in btrfs_update_time()
6327 args.root = BTRFS_I(inode)->root; in btrfs_insert_inode_locked()
6330 btrfs_inode_hash(inode->i_ino, BTRFS_I(inode)->root), in btrfs_insert_inode_locked()
6430 struct btrfs_root *root; in btrfs_create_new_inode() local
6447 BTRFS_I(inode)->root = btrfs_grab_root(BTRFS_I(dir)->root); in btrfs_create_new_inode()
6448 root = BTRFS_I(inode)->root; in btrfs_create_new_inode()
6450 ret = btrfs_get_free_objectid(root, &objectid); in btrfs_create_new_inode()
6537 ret = btrfs_insert_empty_items(trans, root, path, &batch); in btrfs_create_new_inode()
6594 BTRFS_I(dir)->root); in btrfs_create_new_inode()
6607 btrfs_ino(BTRFS_I(inode)), root->root_key.objectid, in btrfs_create_new_inode()
6628 btrfs_update_root_times(trans, root); in btrfs_create_new_inode()
6667 struct btrfs_root *root = parent_inode->root; in btrfs_add_link() local
6672 memcpy(&key, &inode->root->root_key, sizeof(key)); in btrfs_add_link()
6681 root->root_key.objectid, parent_ino, in btrfs_add_link()
6684 ret = btrfs_insert_inode_ref(trans, root, name, in btrfs_add_link()
6710 if (!test_bit(BTRFS_FS_LOG_RECOVERING, &root->fs_info->flags)) { in btrfs_add_link()
6716 ret = btrfs_update_inode(trans, root, parent_inode); in btrfs_add_link()
6726 root->root_key.objectid, parent_ino, in btrfs_add_link()
6734 err = btrfs_del_inode_ref(trans, root, name, ino, parent_ino, in btrfs_add_link()
6748 struct btrfs_root *root = BTRFS_I(dir)->root; in btrfs_create_common() local
6762 trans = btrfs_start_transaction(root, trans_num_items); in btrfs_create_common()
6815 struct btrfs_root *root = BTRFS_I(dir)->root; in btrfs_link() local
6824 if (root->root_key.objectid != BTRFS_I(inode)->root->root_key.objectid) in btrfs_link()
6844 trans = btrfs_start_transaction(root, inode->i_nlink ? 5 : 6); in btrfs_link()
6867 err = btrfs_update_inode(trans, root, BTRFS_I(inode)); in btrfs_link()
6974 struct btrfs_fs_info *fs_info = inode->root->fs_info; in btrfs_get_extent()
6981 struct btrfs_root *root = inode->root; in btrfs_get_extent() local
7029 ret = btrfs_lookup_file_extent(NULL, root, path, objectid, start, 0); in btrfs_get_extent()
7079 ret = btrfs_next_leaf(root, path); in btrfs_get_extent()
7173 trace_btrfs_get_extent(root, inode, em); in btrfs_get_extent()
7224 struct btrfs_root *root = inode->root; in btrfs_new_extent_direct() local
7225 struct btrfs_fs_info *fs_info = root->fs_info; in btrfs_new_extent_direct()
7233 ret = btrfs_reserve_extent(root, len, len, fs_info->sectorsize, in btrfs_new_extent_direct()
7237 wait_on_bit_io(&inode->root->fs_info->flags, BTRFS_FS_NEED_ZONE_FINISH, in btrfs_new_extent_direct()
7297 struct btrfs_root *root = BTRFS_I(inode)->root; in can_nocow_extent() local
7308 ret = btrfs_lookup_file_extent(NULL, root, path, in can_nocow_extent()
7367 root->fs_info->sectorsize) - 1; in can_nocow_extent()
7993 struct btrfs_fs_info *fs_info = BTRFS_I(inode)->root->fs_info; in btrfs_check_read_dio_bio()
8036 btrfs_warn(BTRFS_I(dip->inode)->root->fs_info, in btrfs_end_dio_bio()
8364 struct btrfs_fs_info *fs_info = inode->root->fs_info; in btrfs_invalidate_folio()
8700 struct btrfs_root *root = BTRFS_I(inode)->root; in btrfs_truncate() local
8752 trans = btrfs_start_transaction(root, 2); in btrfs_truncate()
8782 ret = btrfs_truncate_inode_items(trans, root, &control); in btrfs_truncate()
8794 ret = btrfs_update_inode(trans, root, BTRFS_I(inode)); in btrfs_truncate()
8801 trans = btrfs_start_transaction(root, 2); in btrfs_truncate()
8828 trans = btrfs_start_transaction(root, 1); in btrfs_truncate()
8840 ret2 = btrfs_update_inode(trans, root, BTRFS_I(inode)); in btrfs_truncate()
8900 ei->root = NULL; in btrfs_alloc_inode()
8967 struct btrfs_root *root = inode->root; in btrfs_destroy_inode() local
8987 if (!root) in btrfs_destroy_inode()
9001 btrfs_err(root->fs_info, in btrfs_destroy_inode()
9006 btrfs_lockdep_acquire(root->fs_info, btrfs_ordered_extent); in btrfs_destroy_inode()
9017 btrfs_put_root(inode->root); in btrfs_destroy_inode()
9022 struct btrfs_root *root = BTRFS_I(inode)->root; in btrfs_drop_inode() local
9024 if (root == NULL) in btrfs_drop_inode()
9028 if (btrfs_root_refs(&root->root_item) == 0) in btrfs_drop_inode()
9131 stat->dev = BTRFS_I(inode)->root->anon_dev; in btrfs_getattr()
9150 struct btrfs_root *root = BTRFS_I(old_dir)->root; in btrfs_rename_exchange() local
9151 struct btrfs_root *dest = BTRFS_I(new_dir)->root; in btrfs_rename_exchange()
9172 if (root != dest && in btrfs_rename_exchange()
9226 trans = btrfs_start_transaction(root, trans_num_items); in btrfs_rename_exchange()
9232 if (dest != root) { in btrfs_rename_exchange()
9270 ret = btrfs_insert_inode_ref(trans, root, old_name, new_ino, in btrfs_rename_exchange()
9307 ret = btrfs_update_inode(trans, root, BTRFS_I(old_inode)); in btrfs_rename_exchange()
9355 btrfs_pin_log_trans(root); in btrfs_rename_exchange()
9369 btrfs_end_log_trans(root); in btrfs_rename_exchange()
9412 struct btrfs_root *root = BTRFS_I(old_dir)->root; in btrfs_rename() local
9413 struct btrfs_root *dest = BTRFS_I(new_dir)->root; in btrfs_rename()
9427 if (old_ino != BTRFS_FIRST_FREE_OBJECTID && root != dest) in btrfs_rename()
9523 trans = btrfs_start_transaction(root, trans_num_items); in btrfs_rename()
9529 if (dest != root) { in btrfs_rename()
9571 ret = btrfs_update_inode(trans, root, BTRFS_I(old_inode)); in btrfs_rename()
9657 btrfs_btree_balance_dirty(BTRFS_I(new_dir)->root->fs_info); in btrfs_rename2()
9706 static int start_delalloc_inodes(struct btrfs_root *root, in start_delalloc_inodes() argument
9721 mutex_lock(&root->delalloc_mutex); in start_delalloc_inodes()
9722 spin_lock(&root->delalloc_lock); in start_delalloc_inodes()
9723 list_splice_init(&root->delalloc_inodes, &splice); in start_delalloc_inodes()
9729 &root->delalloc_inodes); in start_delalloc_inodes()
9737 cond_resched_lock(&root->delalloc_lock); in start_delalloc_inodes()
9740 spin_unlock(&root->delalloc_lock); in start_delalloc_inodes()
9753 btrfs_queue_work(root->fs_info->flush_workers, in start_delalloc_inodes()
9762 spin_lock(&root->delalloc_lock); in start_delalloc_inodes()
9764 spin_unlock(&root->delalloc_lock); in start_delalloc_inodes()
9774 spin_lock(&root->delalloc_lock); in start_delalloc_inodes()
9775 list_splice_tail(&splice, &root->delalloc_inodes); in start_delalloc_inodes()
9776 spin_unlock(&root->delalloc_lock); in start_delalloc_inodes()
9778 mutex_unlock(&root->delalloc_mutex); in start_delalloc_inodes()
9782 int btrfs_start_delalloc_snapshot(struct btrfs_root *root, bool in_reclaim_context) in btrfs_start_delalloc_snapshot() argument
9790 struct btrfs_fs_info *fs_info = root->fs_info; in btrfs_start_delalloc_snapshot()
9795 return start_delalloc_inodes(root, &wbc, true, in_reclaim_context); in btrfs_start_delalloc_snapshot()
9807 struct btrfs_root *root; in btrfs_start_delalloc_roots() local
9827 root = list_first_entry(&splice, struct btrfs_root, in btrfs_start_delalloc_roots()
9829 root = btrfs_grab_root(root); in btrfs_start_delalloc_roots()
9830 BUG_ON(!root); in btrfs_start_delalloc_roots()
9831 list_move_tail(&root->delalloc_root, in btrfs_start_delalloc_roots()
9835 ret = start_delalloc_inodes(root, &wbc, false, in_reclaim_context); in btrfs_start_delalloc_roots()
9836 btrfs_put_root(root); in btrfs_start_delalloc_roots()
9859 struct btrfs_root *root = BTRFS_I(dir)->root; in btrfs_symlink() local
9896 trans = btrfs_start_transaction(root, trans_num_items); in btrfs_symlink()
9918 err = btrfs_insert_empty_item(trans, root, path, &key, in btrfs_symlink()
10027 btrfs_qgroup_free_refroot(inode->root->fs_info, in insert_prealloc_file_extent()
10028 inode->root->root_key.objectid, qgroup_released, in insert_prealloc_file_extent()
10040 struct btrfs_root *root = BTRFS_I(inode)->root; in __btrfs_prealloc_file_range() local
10063 ret = btrfs_reserve_extent(root, cur_bytes, cur_bytes, in __btrfs_prealloc_file_range()
10133 ret = btrfs_update_inode(trans, root, BTRFS_I(inode)); in __btrfs_prealloc_file_range()
10174 struct btrfs_root *root = BTRFS_I(inode)->root; in btrfs_permission() local
10179 if (btrfs_root_readonly(root)) in btrfs_permission()
10192 struct btrfs_root *root = BTRFS_I(dir)->root; in btrfs_tmpfile() local
10215 trans = btrfs_start_transaction(root, trans_num_items); in btrfs_tmpfile()
10250 struct btrfs_fs_info *fs_info = inode->root->fs_info; in btrfs_set_range_writeback()
10302 struct btrfs_root *root = inode->root; in btrfs_encoded_read_inline() local
10303 struct btrfs_fs_info *fs_info = root->fs_info; in btrfs_encoded_read_inline()
10318 ret = btrfs_lookup_file_extent(NULL, root, path, btrfs_ino(inode), in btrfs_encoded_read_inline()
10392 struct btrfs_fs_info *fs_info = inode->root->fs_info; in submit_encoded_read_bio()
10411 struct btrfs_fs_info *fs_info = inode->root->fs_info; in btrfs_encoded_read_verify_csum()
10464 struct btrfs_fs_info *fs_info = inode->root->fs_info; in btrfs_encoded_read_regular_fill_pages()
10608 struct btrfs_fs_info *fs_info = inode->root->fs_info; in btrfs_encoded_read()
10751 struct btrfs_root *root = inode->root; in btrfs_do_encoded_write() local
10752 struct btrfs_fs_info *fs_info = root->fs_info; in btrfs_do_encoded_write()
10923 ret = btrfs_reserve_extent(root, disk_num_bytes, disk_num_bytes, in btrfs_do_encoded_write()
11007 struct btrfs_fs_info *fs_info = BTRFS_I(inode)->root->fs_info; in btrfs_add_swapfile_pin()
11048 struct btrfs_fs_info *fs_info = BTRFS_I(inode)->root->fs_info; in btrfs_free_swapfile_pins()
11128 atomic_dec(&BTRFS_I(inode)->root->nr_swapfiles); in btrfs_swap_deactivate()
11135 struct btrfs_root *root = BTRFS_I(inode)->root; in btrfs_swap_activate() local
11136 struct btrfs_fs_info *fs_info = root->fs_info; in btrfs_swap_activate()
11195 if (!btrfs_drew_try_write_lock(&root->snapshot_lock)) { in btrfs_swap_activate()
11211 spin_lock(&root->root_item_lock); in btrfs_swap_activate()
11212 if (btrfs_root_dead(root)) { in btrfs_swap_activate()
11213 spin_unlock(&root->root_item_lock); in btrfs_swap_activate()
11218 root->root_key.objectid); in btrfs_swap_activate()
11221 atomic_inc(&root->nr_swapfiles); in btrfs_swap_activate()
11222 spin_unlock(&root->root_item_lock); in btrfs_swap_activate()
11368 btrfs_drew_write_unlock(&root->snapshot_lock); in btrfs_swap_activate()
11432 struct btrfs_root *root = inode->root; in btrfs_assert_inode_range_clean() local
11440 btrfs_err(root->fs_info, in btrfs_assert_inode_range_clean()
11442 start, end, btrfs_ino(inode), root->root_key.objectid, in btrfs_assert_inode_range_clean()