Lines Matching refs:reloc_root

529 	struct btrfs_root *reloc_root;  in should_ignore_root()  local
534 reloc_root = root->reloc_root; in should_ignore_root()
535 if (!reloc_root) in should_ignore_root()
538 if (btrfs_root_last_snapshot(&reloc_root->root_item) == in should_ignore_root()
1191 struct btrfs_root *reloc_root = src->reloc_root; local
1208 BUG_ON(node->new_bytenr != reloc_root->node->start);
1213 reloc_root->commit_root->start);
1369 struct btrfs_root *reloc_root; local
1431 reloc_root = btrfs_read_fs_root(root->fs_info->tree_root, &root_key);
1432 BUG_ON(IS_ERR(reloc_root));
1433 reloc_root->last_trans = trans->transid;
1434 return reloc_root;
1444 struct btrfs_root *reloc_root; local
1450 if (root->reloc_root) {
1451 reloc_root = root->reloc_root;
1452 reloc_root->last_trans = trans->transid;
1465 reloc_root = create_reloc_root(trans, root, root->root_key.objectid);
1469 ret = __add_reloc_root(reloc_root);
1471 root->reloc_root = reloc_root;
1481 struct btrfs_root *reloc_root; local
1485 if (!root->reloc_root)
1488 reloc_root = root->reloc_root;
1489 root_item = &reloc_root->root_item;
1493 root->reloc_root = NULL;
1494 __del_reloc_root(reloc_root);
1497 if (reloc_root->commit_root != reloc_root->node) {
1498 btrfs_set_root_node(root_item, reloc_root->node);
1499 free_extent_buffer(reloc_root->commit_root);
1500 reloc_root->commit_root = btrfs_root_node(reloc_root);
1504 &reloc_root->root_key, root_item);
2117 struct btrfs_root *reloc_root; local
2133 reloc_root = root->reloc_root;
2134 root_item = &reloc_root->root_item;
2138 extent_buffer_get(reloc_root->node);
2139 path->nodes[level] = reloc_root->node;
2147 ret = btrfs_search_slot(NULL, reloc_root, &key, path, 0, 0);
2182 ret = walk_down_reloc_tree(reloc_root, path, &level);
2194 ret = replace_path(trans, root, reloc_root, path,
2209 ret = walk_up_reloc_tree(reloc_root, path, &level);
2267 struct btrfs_root *reloc_root; local
2307 reloc_root = list_entry(rc->reloc_roots.next,
2309 list_del_init(&reloc_root->root_list);
2311 root = read_fs_root(reloc_root->fs_info,
2312 reloc_root->root_key.offset);
2314 BUG_ON(root->reloc_root != reloc_root);
2321 btrfs_set_root_refs(&reloc_root->root_item, 1);
2324 list_add(&reloc_root->root_list, &reloc_roots);
2339 struct btrfs_root *reloc_root; local
2342 reloc_root = list_entry(list->next, struct btrfs_root,
2344 __del_reloc_root(reloc_root);
2352 struct btrfs_root *reloc_root; local
2374 reloc_root = list_entry(reloc_roots.next,
2377 if (btrfs_root_refs(&reloc_root->root_item) > 0) {
2378 root = read_fs_root(reloc_root->fs_info,
2379 reloc_root->root_key.offset);
2381 BUG_ON(root->reloc_root != reloc_root);
2385 if (list_empty(&reloc_root->root_list))
2386 list_add_tail(&reloc_root->root_list,
2391 list_del_init(&reloc_root->root_list);
2398 last_snap = btrfs_root_rtransid(&reloc_root->root_item);
2399 otransid = btrfs_root_otransid(&reloc_root->root_item);
2400 objectid = reloc_root->root_key.offset;
2402 ret = btrfs_drop_snapshot(reloc_root, rc->block_rsv, 0, 1);
2404 if (list_empty(&reloc_root->root_list))
2405 list_add_tail(&reloc_root->root_list,
2444 struct btrfs_root *reloc_root) argument
2448 if (reloc_root->last_trans == trans->transid)
2451 root = read_fs_root(reloc_root->fs_info, reloc_root->root_key.offset);
2453 BUG_ON(root->reloc_root != reloc_root);
2482 root = root->reloc_root;
2923 root = root->reloc_root;
4328 struct btrfs_root *reloc_root; local
4365 reloc_root = btrfs_read_fs_root(root, &key);
4366 if (IS_ERR(reloc_root)) {
4367 err = PTR_ERR(reloc_root);
4371 list_add(&reloc_root->root_list, &reloc_roots);
4373 if (btrfs_root_refs(&reloc_root->root_item) > 0) {
4375 reloc_root->root_key.offset);
4382 ret = mark_garbage_root(reloc_root);
4420 reloc_root = list_entry(reloc_roots.next,
4422 list_del(&reloc_root->root_list);
4424 if (btrfs_root_refs(&reloc_root->root_item) == 0) {
4425 list_add_tail(&reloc_root->root_list,
4431 reloc_root->root_key.offset);
4437 err = __add_reloc_root(reloc_root);
4439 fs_root->reloc_root = reloc_root;
4596 if (!root->reloc_root)
4603 root = root->reloc_root;
4626 struct btrfs_root *reloc_root; local
4631 if (!root->reloc_root)
4646 reloc_root = create_reloc_root(trans, root->reloc_root,
4648 if (IS_ERR(reloc_root))
4649 return PTR_ERR(reloc_root);
4651 ret = __add_reloc_root(reloc_root);
4653 new_root->reloc_root = reloc_root;
4656 ret = clone_backref_node(trans, rc, root, reloc_root);