Home
last modified time | relevance | path

Searched refs:delayed_refs (Results 1 – 10 of 10) sorted by relevance

/Linux-v5.15/fs/btrfs/
Ddelayed-ref.c57 atomic_read(&trans->transaction->delayed_refs.num_entries); in btrfs_should_throttle_delayed_refs()
397 int btrfs_delayed_ref_lock(struct btrfs_delayed_ref_root *delayed_refs, in btrfs_delayed_ref_lock() argument
400 lockdep_assert_held(&delayed_refs->lock); in btrfs_delayed_ref_lock()
405 spin_unlock(&delayed_refs->lock); in btrfs_delayed_ref_lock()
408 spin_lock(&delayed_refs->lock); in btrfs_delayed_ref_lock()
419 struct btrfs_delayed_ref_root *delayed_refs, in drop_delayed_ref() argument
430 atomic_dec(&delayed_refs->num_entries); in drop_delayed_ref()
434 struct btrfs_delayed_ref_root *delayed_refs, in merge_ref() argument
463 drop_delayed_ref(trans, delayed_refs, head, next); in merge_ref()
466 drop_delayed_ref(trans, delayed_refs, head, ref); in merge_ref()
[all …]
Dtransaction.h87 struct btrfs_delayed_ref_root delayed_refs; member
186 struct btrfs_delayed_ref_root *delayed_refs; in btrfs_set_skip_qgroup() local
188 delayed_refs = &trans->transaction->delayed_refs; in btrfs_set_skip_qgroup()
189 WARN_ON(delayed_refs->qgroup_to_skip); in btrfs_set_skip_qgroup()
190 delayed_refs->qgroup_to_skip = qgroupid; in btrfs_set_skip_qgroup()
195 struct btrfs_delayed_ref_root *delayed_refs; in btrfs_clear_skip_qgroup() local
197 delayed_refs = &trans->transaction->delayed_refs; in btrfs_clear_skip_qgroup()
198 WARN_ON(!delayed_refs->qgroup_to_skip); in btrfs_clear_skip_qgroup()
199 delayed_refs->qgroup_to_skip = 0; in btrfs_clear_skip_qgroup()
Ddelayed-ref.h355 struct btrfs_delayed_ref_root *delayed_refs,
359 btrfs_find_delayed_ref_head(struct btrfs_delayed_ref_root *delayed_refs,
361 int btrfs_delayed_ref_lock(struct btrfs_delayed_ref_root *delayed_refs,
367 void btrfs_delete_ref_head(struct btrfs_delayed_ref_root *delayed_refs,
371 struct btrfs_delayed_ref_root *delayed_refs);
Dextent-tree.c120 struct btrfs_delayed_ref_root *delayed_refs; in btrfs_lookup_extent_info() local
201 delayed_refs = &trans->transaction->delayed_refs; in btrfs_lookup_extent_info()
202 spin_lock(&delayed_refs->lock); in btrfs_lookup_extent_info()
203 head = btrfs_find_delayed_ref_head(delayed_refs, bytenr); in btrfs_lookup_extent_info()
207 spin_unlock(&delayed_refs->lock); in btrfs_lookup_extent_info()
230 spin_unlock(&delayed_refs->lock); in btrfs_lookup_extent_info()
1748 static void unselect_delayed_ref_head(struct btrfs_delayed_ref_root *delayed_refs, in unselect_delayed_ref_head() argument
1751 spin_lock(&delayed_refs->lock); in unselect_delayed_ref_head()
1753 delayed_refs->num_heads_ready++; in unselect_delayed_ref_head()
1754 spin_unlock(&delayed_refs->lock); in unselect_delayed_ref_head()
[all …]
Dtransaction.c129 &transaction->delayed_refs.href_root.rb_root)); in btrfs_put_transaction()
131 &transaction->delayed_refs.dirty_extent_root)); in btrfs_put_transaction()
132 if (transaction->delayed_refs.pending_csums) in btrfs_put_transaction()
135 transaction->delayed_refs.pending_csums); in btrfs_put_transaction()
356 memset(&cur_trans->delayed_refs, 0, sizeof(cur_trans->delayed_refs)); in join_transaction()
358 cur_trans->delayed_refs.href_root = RB_ROOT_CACHED; in join_transaction()
359 cur_trans->delayed_refs.dirty_extent_root = RB_ROOT; in join_transaction()
360 atomic_set(&cur_trans->delayed_refs.num_entries, 0); in join_transaction()
373 spin_lock_init(&cur_trans->delayed_refs.lock); in join_transaction()
930 test_bit(BTRFS_DELAYED_REFS_FLUSHING, &cur_trans->delayed_refs.flags)) in btrfs_should_end_transaction()
[all …]
Dqgroup.c1673 struct btrfs_delayed_ref_root *delayed_refs, in btrfs_qgroup_trace_extent_nolock() argument
1676 struct rb_node **p = &delayed_refs->dirty_extent_root.rb_node; in btrfs_qgroup_trace_extent_nolock()
1681 lockdep_assert_held(&delayed_refs->lock); in btrfs_qgroup_trace_extent_nolock()
1703 rb_insert_color(&record->node, &delayed_refs->dirty_extent_root); in btrfs_qgroup_trace_extent_nolock()
1761 struct btrfs_delayed_ref_root *delayed_refs; in btrfs_qgroup_trace_extent() local
1771 delayed_refs = &trans->transaction->delayed_refs; in btrfs_qgroup_trace_extent()
1776 spin_lock(&delayed_refs->lock); in btrfs_qgroup_trace_extent()
1777 ret = btrfs_qgroup_trace_extent_nolock(fs_info, delayed_refs, record); in btrfs_qgroup_trace_extent()
1778 spin_unlock(&delayed_refs->lock); in btrfs_qgroup_trace_extent()
2629 struct btrfs_delayed_ref_root *delayed_refs; in btrfs_qgroup_account_extents() local
[all …]
Dqgroup.h277 struct btrfs_delayed_ref_root *delayed_refs,
Ddisk-io.c4630 struct btrfs_delayed_ref_root *delayed_refs; in btrfs_destroy_delayed_refs() local
4634 delayed_refs = &trans->delayed_refs; in btrfs_destroy_delayed_refs()
4636 spin_lock(&delayed_refs->lock); in btrfs_destroy_delayed_refs()
4637 if (atomic_read(&delayed_refs->num_entries) == 0) { in btrfs_destroy_delayed_refs()
4638 spin_unlock(&delayed_refs->lock); in btrfs_destroy_delayed_refs()
4643 while ((node = rb_first_cached(&delayed_refs->href_root)) != NULL) { in btrfs_destroy_delayed_refs()
4650 if (btrfs_delayed_ref_lock(delayed_refs, head)) in btrfs_destroy_delayed_refs()
4662 atomic_dec(&delayed_refs->num_entries); in btrfs_destroy_delayed_refs()
4668 btrfs_delete_ref_head(delayed_refs, head); in btrfs_destroy_delayed_refs()
4670 spin_unlock(&delayed_refs->lock); in btrfs_destroy_delayed_refs()
[all …]
Dbackref.c1175 struct btrfs_delayed_ref_root *delayed_refs = NULL; local
1229 delayed_refs = &trans->transaction->delayed_refs;
1230 spin_lock(&delayed_refs->lock);
1231 head = btrfs_find_delayed_ref_head(delayed_refs, bytenr);
1235 spin_unlock(&delayed_refs->lock);
1248 spin_unlock(&delayed_refs->lock);
1255 spin_unlock(&delayed_refs->lock);
Dctree.h2682 struct btrfs_delayed_ref_root *delayed_refs,