Lines Matching refs:root

97 			   struct btrfs_root *root, struct inode *inode,
103 struct btrfs_root *root,
106 struct btrfs_root *root,
140 struct btrfs_root *root, in start_log_trans() argument
146 mutex_lock(&root->log_mutex); in start_log_trans()
147 if (root->log_root) { in start_log_trans()
148 if (btrfs_need_log_full_commit(root->fs_info, trans)) { in start_log_trans()
152 if (!root->log_start_pid) { in start_log_trans()
153 root->log_start_pid = current->pid; in start_log_trans()
154 clear_bit(BTRFS_ROOT_MULTI_LOG_TASKS, &root->state); in start_log_trans()
155 } else if (root->log_start_pid != current->pid) { in start_log_trans()
156 set_bit(BTRFS_ROOT_MULTI_LOG_TASKS, &root->state); in start_log_trans()
159 atomic_inc(&root->log_batch); in start_log_trans()
160 atomic_inc(&root->log_writers); in start_log_trans()
162 index = root->log_transid % 2; in start_log_trans()
163 list_add_tail(&ctx->list, &root->log_ctxs[index]); in start_log_trans()
164 ctx->log_transid = root->log_transid; in start_log_trans()
166 mutex_unlock(&root->log_mutex); in start_log_trans()
171 mutex_lock(&root->fs_info->tree_log_mutex); in start_log_trans()
172 if (!root->fs_info->log_root_tree) in start_log_trans()
173 ret = btrfs_init_log_root_tree(trans, root->fs_info); in start_log_trans()
174 mutex_unlock(&root->fs_info->tree_log_mutex); in start_log_trans()
178 if (!root->log_root) { in start_log_trans()
179 ret = btrfs_add_log_tree(trans, root); in start_log_trans()
183 clear_bit(BTRFS_ROOT_MULTI_LOG_TASKS, &root->state); in start_log_trans()
184 root->log_start_pid = current->pid; in start_log_trans()
185 atomic_inc(&root->log_batch); in start_log_trans()
186 atomic_inc(&root->log_writers); in start_log_trans()
188 index = root->log_transid % 2; in start_log_trans()
189 list_add_tail(&ctx->list, &root->log_ctxs[index]); in start_log_trans()
190 ctx->log_transid = root->log_transid; in start_log_trans()
193 mutex_unlock(&root->log_mutex); in start_log_trans()
202 static int join_running_log_trans(struct btrfs_root *root) in join_running_log_trans() argument
207 if (!root->log_root) in join_running_log_trans()
210 mutex_lock(&root->log_mutex); in join_running_log_trans()
211 if (root->log_root) { in join_running_log_trans()
213 atomic_inc(&root->log_writers); in join_running_log_trans()
215 mutex_unlock(&root->log_mutex); in join_running_log_trans()
224 int btrfs_pin_log_trans(struct btrfs_root *root) in btrfs_pin_log_trans() argument
228 mutex_lock(&root->log_mutex); in btrfs_pin_log_trans()
229 atomic_inc(&root->log_writers); in btrfs_pin_log_trans()
230 mutex_unlock(&root->log_mutex); in btrfs_pin_log_trans()
238 void btrfs_end_log_trans(struct btrfs_root *root) in btrfs_end_log_trans() argument
240 if (atomic_dec_and_test(&root->log_writers)) { in btrfs_end_log_trans()
242 if (waitqueue_active(&root->log_writer_wait)) in btrfs_end_log_trans()
243 wake_up(&root->log_writer_wait); in btrfs_end_log_trans()
342 struct btrfs_root *root, in overwrite_item() argument
356 if (root->root_key.objectid != BTRFS_TREE_LOG_OBJECTID) in overwrite_item()
363 ret = btrfs_search_slot(NULL, root, key, path, 0, 0); in overwrite_item()
457 ret = btrfs_insert_empty_item(trans, root, path, in overwrite_item()
467 btrfs_truncate_item(root, path, item_size, 1); in overwrite_item()
469 btrfs_extend_item(root, path, in overwrite_item()
553 static noinline struct inode *read_one_inode(struct btrfs_root *root, in read_one_inode() argument
562 inode = btrfs_iget(root->fs_info->sb, &key, root, NULL); in read_one_inode()
585 struct btrfs_root *root, in replay_one_extent() argument
616 extent_end = ALIGN(start + size, root->sectorsize); in replay_one_extent()
622 inode = read_one_inode(root, key->objectid); in replay_one_extent()
633 ret = btrfs_lookup_file_extent(trans, root, path, btrfs_ino(inode), in replay_one_extent()
665 ret = btrfs_drop_extents(trans, root, inode, start, extent_end, 1); in replay_one_extent()
675 ret = btrfs_insert_empty_item(trans, root, path, key, in replay_one_extent()
697 ret = btrfs_lookup_data_extent(root, ins.objectid, in replay_one_extent()
700 ret = btrfs_inc_extent_ref(trans, root, in replay_one_extent()
702 0, root->root_key.objectid, in replay_one_extent()
712 root, root->root_key.objectid, in replay_one_extent()
729 ret = btrfs_lookup_csums_range(root->log_root, in replay_one_extent()
741 root->fs_info->csum_root, in replay_one_extent()
753 ret = overwrite_item(trans, root, path, eb, slot, key); in replay_one_extent()
759 ret = btrfs_update_inode(trans, root, inode); in replay_one_extent()
775 struct btrfs_root *root, in drop_one_dir_item() argument
798 inode = read_one_inode(root, location.objectid); in drop_one_dir_item()
804 ret = link_to_fixup_dir(trans, root, path, location.objectid); in drop_one_dir_item()
808 ret = btrfs_unlink_inode(trans, root, dir, inode, name, name_len); in drop_one_dir_item()
812 ret = btrfs_run_delayed_items(trans, root); in drop_one_dir_item()
824 static noinline int inode_in_dir(struct btrfs_root *root, in inode_in_dir() argument
833 di = btrfs_lookup_dir_index_item(NULL, root, path, dirid, in inode_in_dir()
843 di = btrfs_lookup_dir_item(NULL, root, path, dirid, name, name_len, 0); in inode_in_dir()
921 struct btrfs_root *root, in __add_inode_ref() argument
943 ret = btrfs_search_slot(NULL, root, &search_key, path, 0, 0); in __add_inode_ref()
982 ret = btrfs_unlink_inode(trans, root, dir, in __add_inode_ref()
988 ret = btrfs_run_delayed_items(trans, root); in __add_inode_ref()
1008 extref = btrfs_lookup_inode_extref(NULL, root, path, name, namelen, in __add_inode_ref()
1046 victim_parent = read_one_inode(root, in __add_inode_ref()
1052 ret = btrfs_unlink_inode(trans, root, in __add_inode_ref()
1059 trans, root); in __add_inode_ref()
1079 di = btrfs_lookup_dir_index_item(trans, root, path, btrfs_ino(dir), in __add_inode_ref()
1082 ret = drop_one_dir_item(trans, root, path, dir, di); in __add_inode_ref()
1089 di = btrfs_lookup_dir_item(trans, root, path, btrfs_ino(dir), in __add_inode_ref()
1092 ret = drop_one_dir_item(trans, root, path, dir, di); in __add_inode_ref()
1150 struct btrfs_root *root, in add_inode_ref() argument
1192 dir = read_one_inode(root, parent_objectid); in add_inode_ref()
1198 inode = read_one_inode(root, inode_objectid); in add_inode_ref()
1213 dir = read_one_inode(root, parent_objectid); in add_inode_ref()
1226 if (!inode_in_dir(root, path, btrfs_ino(dir), btrfs_ino(inode), in add_inode_ref()
1237 ret = __add_inode_ref(trans, root, path, log, in add_inode_ref()
1256 btrfs_update_inode(trans, root, inode); in add_inode_ref()
1269 ret = overwrite_item(trans, root, path, eb, slot, key); in add_inode_ref()
1279 struct btrfs_root *root, u64 ino) in insert_orphan_item() argument
1283 ret = btrfs_insert_orphan_item(trans, root, ino); in insert_orphan_item()
1290 static int count_inode_extrefs(struct btrfs_root *root, in count_inode_extrefs() argument
1305 ret = btrfs_find_one_extref(root, inode_objectid, offset, path, in count_inode_extrefs()
1334 static int count_inode_refs(struct btrfs_root *root, in count_inode_refs() argument
1350 ret = btrfs_search_slot(NULL, root, &key, path, 0, 0); in count_inode_refs()
1402 struct btrfs_root *root, in fixup_inode_link_count() argument
1414 ret = count_inode_refs(root, inode, path); in fixup_inode_link_count()
1420 ret = count_inode_extrefs(root, inode, path); in fixup_inode_link_count()
1430 btrfs_update_inode(trans, root, inode); in fixup_inode_link_count()
1436 ret = replay_dir_deletes(trans, root, NULL, path, in fixup_inode_link_count()
1441 ret = insert_orphan_item(trans, root, ino); in fixup_inode_link_count()
1450 struct btrfs_root *root, in fixup_inode_link_counts() argument
1461 ret = btrfs_search_slot(trans, root, &key, path, -1, 1); in fixup_inode_link_counts()
1476 ret = btrfs_del_item(trans, root, path); in fixup_inode_link_counts()
1481 inode = read_one_inode(root, key.offset); in fixup_inode_link_counts()
1485 ret = fixup_inode_link_count(trans, root, inode); in fixup_inode_link_counts()
1510 struct btrfs_root *root, in link_to_fixup_dir() argument
1518 inode = read_one_inode(root, objectid); in link_to_fixup_dir()
1526 ret = btrfs_insert_empty_item(trans, root, path, &key, 0); in link_to_fixup_dir()
1534 ret = btrfs_update_inode(trans, root, inode); in link_to_fixup_dir()
1551 struct btrfs_root *root, in insert_one_name() argument
1561 inode = read_one_inode(root, location->objectid); in insert_one_name()
1565 dir = read_one_inode(root, dirid); in insert_one_name()
1618 struct btrfs_root *root, in replay_one_name() argument
1635 dir = read_one_inode(root, key->objectid); in replay_one_name()
1651 exists = btrfs_lookup_inode(trans, root, path, &log_key, 0); in replay_one_name()
1659 dst_di = btrfs_lookup_dir_item(trans, root, path, key->objectid, in replay_one_name()
1662 dst_di = btrfs_lookup_dir_index_item(trans, root, path, in replay_one_name()
1697 ret = drop_one_dir_item(trans, root, path, dir, dst_di); in replay_one_name()
1707 ret = btrfs_update_inode(trans, root, dir); in replay_one_name()
1714 if (name_in_log_ref(root->log_root, name, name_len, in replay_one_name()
1722 ret = insert_one_name(trans, root, path, key->objectid, key->offset, in replay_one_name()
1738 struct btrfs_root *root, in replay_one_dir_item() argument
1754 if (verify_dir_item(root, eb, di)) in replay_one_dir_item()
1757 ret = replay_one_name(trans, root, path, eb, di, key); in replay_one_dir_item()
1777 static noinline int find_dir_range(struct btrfs_root *root, in find_dir_range() argument
1795 ret = btrfs_search_slot(NULL, root, &key, path, 0, 0); in find_dir_range()
1825 ret = btrfs_next_leaf(root, path); in find_dir_range()
1855 struct btrfs_root *root, in check_item_in_log() argument
1883 if (verify_dir_item(root, eb, di)) { in check_item_in_log()
1912 inode = read_one_inode(root, location.objectid); in check_item_in_log()
1918 ret = link_to_fixup_dir(trans, root, in check_item_in_log()
1927 ret = btrfs_unlink_inode(trans, root, dir, inode, in check_item_in_log()
1930 ret = btrfs_run_delayed_items(trans, root); in check_item_in_log()
1939 ret = btrfs_search_slot(NULL, root, dir_key, path, in check_item_in_log()
1963 struct btrfs_root *root, in replay_xattr_deletes() argument
1982 ret = btrfs_search_slot(NULL, root, &search_key, path, 0, 0); in replay_xattr_deletes()
2023 di = btrfs_lookup_xattr(trans, root, path, ino, in replay_xattr_deletes()
2031 ret = btrfs_delete_one_dir_name(trans, root, in replay_xattr_deletes()
2048 ret = btrfs_next_leaf(root, path); in replay_xattr_deletes()
2071 struct btrfs_root *root, in replay_dir_deletes() argument
2091 dir = read_one_inode(root, dirid); in replay_dir_deletes()
2116 ret = btrfs_search_slot(NULL, root, &dir_key, path, in replay_dir_deletes()
2123 ret = btrfs_next_leaf(root, path); in replay_dir_deletes()
2136 ret = check_item_in_log(trans, root, log, path, in replay_dir_deletes()
2182 struct btrfs_root *root = wc->replay_dest; in replay_one_buffer() local
2213 ret = replay_xattr_deletes(wc->trans, root, log, in replay_one_buffer()
2220 root, log, path, key.objectid, 0); in replay_one_buffer()
2224 ret = overwrite_item(wc->trans, root, path, in replay_one_buffer()
2234 ret = insert_orphan_item(wc->trans, root, in replay_one_buffer()
2240 ret = link_to_fixup_dir(wc->trans, root, in replay_one_buffer()
2248 ret = replay_one_dir_item(wc->trans, root, path, in replay_one_buffer()
2259 ret = overwrite_item(wc->trans, root, path, in replay_one_buffer()
2265 ret = add_inode_ref(wc->trans, root, log, path, in replay_one_buffer()
2271 ret = replay_one_extent(wc->trans, root, path, in replay_one_buffer()
2276 ret = replay_one_dir_item(wc->trans, root, path, in replay_one_buffer()
2287 struct btrfs_root *root, in walk_down_log_tree() argument
2316 blocksize = root->nodesize; in walk_down_log_tree()
2321 next = btrfs_find_create_tree_block(root, bytenr); in walk_down_log_tree()
2326 ret = wc->process_func(root, next, wc, ptr_gen); in walk_down_log_tree()
2343 clean_tree_block(trans, root->fs_info, in walk_down_log_tree()
2351 ret = btrfs_free_and_pin_reserved_extent(root, in walk_down_log_tree()
2385 struct btrfs_root *root, in walk_up_log_tree() argument
2403 if (path->nodes[*level] == root->node) in walk_up_log_tree()
2409 ret = wc->process_func(root, path->nodes[*level], wc, in walk_up_log_tree()
2422 clean_tree_block(trans, root->fs_info, in walk_up_log_tree()
2429 ret = btrfs_free_and_pin_reserved_extent(root, in walk_up_log_tree()
2539 struct btrfs_root *root, int transid) in wait_log_commit() argument
2550 prepare_to_wait(&root->log_commit_wait[index], in wait_log_commit()
2552 mutex_unlock(&root->log_mutex); in wait_log_commit()
2554 if (root->log_transid_committed < transid && in wait_log_commit()
2555 atomic_read(&root->log_commit[index])) in wait_log_commit()
2558 finish_wait(&root->log_commit_wait[index], &wait); in wait_log_commit()
2559 mutex_lock(&root->log_mutex); in wait_log_commit()
2560 } while (root->log_transid_committed < transid && in wait_log_commit()
2561 atomic_read(&root->log_commit[index])); in wait_log_commit()
2565 struct btrfs_root *root) in wait_for_writer() argument
2569 while (atomic_read(&root->log_writers)) { in wait_for_writer()
2570 prepare_to_wait(&root->log_writer_wait, in wait_for_writer()
2572 mutex_unlock(&root->log_mutex); in wait_for_writer()
2573 if (atomic_read(&root->log_writers)) in wait_for_writer()
2575 finish_wait(&root->log_writer_wait, &wait); in wait_for_writer()
2576 mutex_lock(&root->log_mutex); in wait_for_writer()
2580 static inline void btrfs_remove_log_ctx(struct btrfs_root *root, in btrfs_remove_log_ctx() argument
2586 mutex_lock(&root->log_mutex); in btrfs_remove_log_ctx()
2588 mutex_unlock(&root->log_mutex); in btrfs_remove_log_ctx()
2595 static inline void btrfs_remove_all_log_ctxs(struct btrfs_root *root, in btrfs_remove_all_log_ctxs() argument
2601 INIT_LIST_HEAD(&root->log_ctxs[index]); in btrfs_remove_all_log_ctxs()
2605 list_for_each_entry(ctx, &root->log_ctxs[index], list) in btrfs_remove_all_log_ctxs()
2608 INIT_LIST_HEAD(&root->log_ctxs[index]); in btrfs_remove_all_log_ctxs()
2624 struct btrfs_root *root, struct btrfs_log_ctx *ctx) in btrfs_sync_log() argument
2630 struct btrfs_root *log = root->log_root; in btrfs_sync_log()
2631 struct btrfs_root *log_root_tree = root->fs_info->log_root_tree; in btrfs_sync_log()
2636 mutex_lock(&root->log_mutex); in btrfs_sync_log()
2638 if (root->log_transid_committed >= log_transid) { in btrfs_sync_log()
2639 mutex_unlock(&root->log_mutex); in btrfs_sync_log()
2644 if (atomic_read(&root->log_commit[index1])) { in btrfs_sync_log()
2645 wait_log_commit(trans, root, log_transid); in btrfs_sync_log()
2646 mutex_unlock(&root->log_mutex); in btrfs_sync_log()
2649 ASSERT(log_transid == root->log_transid); in btrfs_sync_log()
2650 atomic_set(&root->log_commit[index1], 1); in btrfs_sync_log()
2653 if (atomic_read(&root->log_commit[(index1 + 1) % 2])) in btrfs_sync_log()
2654 wait_log_commit(trans, root, log_transid - 1); in btrfs_sync_log()
2657 int batch = atomic_read(&root->log_batch); in btrfs_sync_log()
2659 if (!btrfs_test_opt(root, SSD) && in btrfs_sync_log()
2660 test_bit(BTRFS_ROOT_MULTI_LOG_TASKS, &root->state)) { in btrfs_sync_log()
2661 mutex_unlock(&root->log_mutex); in btrfs_sync_log()
2663 mutex_lock(&root->log_mutex); in btrfs_sync_log()
2665 wait_for_writer(trans, root); in btrfs_sync_log()
2666 if (batch == atomic_read(&root->log_batch)) in btrfs_sync_log()
2671 if (btrfs_need_log_full_commit(root->fs_info, trans)) { in btrfs_sync_log()
2674 mutex_unlock(&root->log_mutex); in btrfs_sync_log()
2690 btrfs_abort_transaction(trans, root, ret); in btrfs_sync_log()
2692 btrfs_set_log_full_commit(root->fs_info, trans); in btrfs_sync_log()
2693 mutex_unlock(&root->log_mutex); in btrfs_sync_log()
2699 root->log_transid++; in btrfs_sync_log()
2700 log->log_transid = root->log_transid; in btrfs_sync_log()
2701 root->log_start_pid = 0; in btrfs_sync_log()
2707 mutex_unlock(&root->log_mutex); in btrfs_sync_log()
2735 btrfs_set_log_full_commit(root->fs_info, trans); in btrfs_sync_log()
2738 btrfs_abort_transaction(trans, root, ret); in btrfs_sync_log()
2783 if (btrfs_need_log_full_commit(root->fs_info, trans)) { in btrfs_sync_log()
2797 btrfs_set_log_full_commit(root->fs_info, trans); in btrfs_sync_log()
2798 btrfs_abort_transaction(trans, root, ret); in btrfs_sync_log()
2809 btrfs_set_log_full_commit(root->fs_info, trans); in btrfs_sync_log()
2816 btrfs_set_super_log_root(root->fs_info->super_for_commit, in btrfs_sync_log()
2818 btrfs_set_super_log_root_level(root->fs_info->super_for_commit, in btrfs_sync_log()
2831 ret = write_ctree_super(trans, root->fs_info->tree_root, 1); in btrfs_sync_log()
2833 btrfs_set_log_full_commit(root->fs_info, trans); in btrfs_sync_log()
2834 btrfs_abort_transaction(trans, root, ret); in btrfs_sync_log()
2838 mutex_lock(&root->log_mutex); in btrfs_sync_log()
2839 if (root->last_log_commit < log_transid) in btrfs_sync_log()
2840 root->last_log_commit = log_transid; in btrfs_sync_log()
2841 mutex_unlock(&root->log_mutex); in btrfs_sync_log()
2859 btrfs_remove_all_log_ctxs(root, index1, ret); in btrfs_sync_log()
2861 mutex_lock(&root->log_mutex); in btrfs_sync_log()
2862 root->log_transid_committed++; in btrfs_sync_log()
2863 atomic_set(&root->log_commit[index1], 0); in btrfs_sync_log()
2864 mutex_unlock(&root->log_mutex); in btrfs_sync_log()
2866 if (waitqueue_active(&root->log_commit_wait[index1])) in btrfs_sync_log()
2867 wake_up(&root->log_commit_wait[index1]); in btrfs_sync_log()
2914 int btrfs_free_log(struct btrfs_trans_handle *trans, struct btrfs_root *root) in btrfs_free_log() argument
2916 if (root->log_root) { in btrfs_free_log()
2917 free_log_tree(trans, root->log_root); in btrfs_free_log()
2918 root->log_root = NULL; in btrfs_free_log()
2955 struct btrfs_root *root, in btrfs_del_dir_entries_in_log() argument
2970 ret = join_running_log_trans(root); in btrfs_del_dir_entries_in_log()
2976 log = root->log_root; in btrfs_del_dir_entries_in_log()
3051 btrfs_set_log_full_commit(root->fs_info, trans); in btrfs_del_dir_entries_in_log()
3054 btrfs_abort_transaction(trans, root, ret); in btrfs_del_dir_entries_in_log()
3056 btrfs_end_log_trans(root); in btrfs_del_dir_entries_in_log()
3063 struct btrfs_root *root, in btrfs_del_inode_ref_in_log() argument
3074 ret = join_running_log_trans(root); in btrfs_del_inode_ref_in_log()
3077 log = root->log_root; in btrfs_del_inode_ref_in_log()
3084 btrfs_set_log_full_commit(root->fs_info, trans); in btrfs_del_inode_ref_in_log()
3087 btrfs_abort_transaction(trans, root, ret); in btrfs_del_inode_ref_in_log()
3088 btrfs_end_log_trans(root); in btrfs_del_inode_ref_in_log()
3132 struct btrfs_root *root, struct inode *inode, in log_dir_items() argument
3139 struct btrfs_root *log = root->log_root; in log_dir_items()
3149 log = root->log_root; in log_dir_items()
3155 ret = btrfs_search_forward(root, &min_key, path, trans->transid); in log_dir_items()
3166 ret = btrfs_search_slot(NULL, root, &min_key, path, 0, 0); in log_dir_items()
3171 ret = btrfs_previous_item(root, path, ino, key_type); in log_dir_items()
3189 ret = btrfs_previous_item(root, path, ino, key_type); in log_dir_items()
3207 ret = btrfs_search_slot(NULL, root, &min_key, path, 0, 0); in log_dir_items()
3270 ret = btrfs_next_leaf(root, path); in log_dir_items()
3322 struct btrfs_root *root, struct inode *inode, in log_directory_changes() argument
3336 ret = log_dir_items(trans, root, inode, path, in log_directory_changes()
3493 struct btrfs_root *log = BTRFS_I(inode)->root->log_root; in copy_items()
3654 ret = btrfs_prev_leaf(BTRFS_I(inode)->root, src_path); in copy_items()
3696 ret = btrfs_search_slot(NULL, BTRFS_I(inode)->root, &first_key, in copy_items()
3717 ret = btrfs_next_leaf(BTRFS_I(inode)->root, src_path); in copy_items()
3782 struct btrfs_root *root, in wait_ordered_extents() argument
3788 struct btrfs_root *log = root->log_root; in wait_ordered_extents()
3930 struct inode *inode, struct btrfs_root *root, in log_one_extent() argument
3936 struct btrfs_root *log = root->log_root; in log_one_extent()
3947 ret = wait_ordered_extents(trans, inode, root, em, logged_list, in log_one_extent()
4024 struct btrfs_root *root, in btrfs_log_changed_extents() argument
4040 test_gen = root->fs_info->last_trans_committed; in btrfs_log_changed_extents()
4086 ret = log_one_extent(trans, inode, root, em, path, logged_list, in btrfs_log_changed_extents()
4136 struct btrfs_root *root, in btrfs_log_all_xattrs() argument
4151 ret = btrfs_search_slot(NULL, root, &key, path, 0, 0); in btrfs_log_all_xattrs()
4173 ret = btrfs_next_leaf(root, path); in btrfs_log_all_xattrs()
4231 struct btrfs_root *root, in btrfs_log_trailing_hole() argument
4240 struct btrfs_root *log = root->log_root; in btrfs_log_trailing_hole()
4244 if (!btrfs_fs_incompat(root->fs_info, NO_HOLES)) in btrfs_log_trailing_hole()
4251 ret = btrfs_search_slot(NULL, root, &key, path, 0, 0); in btrfs_log_trailing_hole()
4301 hole_size = ALIGN(hole_size, root->sectorsize); in btrfs_log_trailing_hole()
4407 di = btrfs_lookup_dir_item(NULL, BTRFS_I(inode)->root, in btrfs_check_ref_name_override()
4443 struct btrfs_root *root, struct inode *inode, in btrfs_log_inode() argument
4453 struct btrfs_root *log = root->log_root; in btrfs_log_inode()
4501 BTRFS_I(inode)->generation > root->fs_info->last_trans_committed) in btrfs_log_inode()
4586 ret = btrfs_search_forward(root, &min_key, in btrfs_log_inode()
4611 btrfs_set_log_full_commit(root->fs_info, trans); in btrfs_log_inode()
4704 err = btrfs_log_all_xattrs(trans, root, inode, path, dst_path); in btrfs_log_inode()
4710 err = btrfs_log_trailing_hole(trans, root, inode, path); in btrfs_log_inode()
4738 ret = btrfs_log_changed_extents(trans, root, inode, dst_path, in btrfs_log_inode()
4777 ret = log_directory_changes(trans, root, inode, path, dst_path, in btrfs_log_inode()
4814 struct btrfs_root *root; in check_parent_dirs_for_sync() local
4847 root = BTRFS_I(inode)->root; in check_parent_dirs_for_sync()
4853 btrfs_set_log_full_commit(root->fs_info, trans); in check_parent_dirs_for_sync()
4923 struct btrfs_root *root, in log_new_dir_dentries() argument
4927 struct btrfs_root *log = root->log_root; in log_new_dir_dentries()
4994 di_inode = btrfs_iget(root->fs_info->sb, &di_key, in log_new_dir_dentries()
4995 root, NULL); in log_new_dir_dentries()
5010 ret = btrfs_log_inode(trans, root, di_inode, in log_new_dir_dentries()
5057 struct btrfs_root *root, struct inode *inode, in btrfs_log_inode_parent() argument
5068 u64 last_committed = root->fs_info->last_trans_committed; in btrfs_log_inode_parent()
5077 if (btrfs_test_opt(root, NOTREELOG)) { in btrfs_log_inode_parent()
5086 if (root->fs_info->last_trans_log_full_commit > in btrfs_log_inode_parent()
5087 root->fs_info->last_trans_committed) { in btrfs_log_inode_parent()
5092 if (root != BTRFS_I(inode)->root || in btrfs_log_inode_parent()
5093 btrfs_root_refs(&root->root_item) == 0) { in btrfs_log_inode_parent()
5108 ret = start_log_trans(trans, root, ctx); in btrfs_log_inode_parent()
5112 ret = btrfs_log_inode(trans, root, inode, inode_only, start, end, ctx); in btrfs_log_inode_parent()
5137 if (root != BTRFS_I(inode)->root) in btrfs_log_inode_parent()
5154 root->fs_info->last_trans_committed || in btrfs_log_inode_parent()
5156 ret = btrfs_log_inode(trans, root, inode, inode_only, in btrfs_log_inode_parent()
5169 ret = log_new_dir_dentries(trans, root, orig_inode, ctx); in btrfs_log_inode_parent()
5175 btrfs_set_log_full_commit(root->fs_info, trans); in btrfs_log_inode_parent()
5180 btrfs_remove_log_ctx(root, ctx); in btrfs_log_inode_parent()
5181 btrfs_end_log_trans(root); in btrfs_log_inode_parent()
5193 struct btrfs_root *root, struct dentry *dentry, in btrfs_log_dentry_safe() argument
5201 ret = btrfs_log_inode_parent(trans, root, d_inode(dentry), parent, in btrfs_log_dentry_safe()
5420 struct btrfs_root * root = BTRFS_I(inode)->root; in btrfs_log_new_name() local
5434 root->fs_info->last_trans_committed && in btrfs_log_new_name()
5436 root->fs_info->last_trans_committed)) in btrfs_log_new_name()
5439 return btrfs_log_inode_parent(trans, root, inode, parent, 0, in btrfs_log_new_name()