Lines Matching defs:delayed_refs

500 int btrfs_delayed_ref_lock(struct btrfs_delayed_ref_root *delayed_refs,
503 lockdep_assert_held(&delayed_refs->lock);
508 spin_unlock(&delayed_refs->lock);
511 spin_lock(&delayed_refs->lock);
522 struct btrfs_delayed_ref_root *delayed_refs,
532 atomic_dec(&delayed_refs->num_entries);
537 struct btrfs_delayed_ref_root *delayed_refs,
566 drop_delayed_ref(fs_info, delayed_refs, head, next);
569 drop_delayed_ref(fs_info, delayed_refs, head, ref);
584 struct btrfs_delayed_ref_root *delayed_refs,
607 if (merge_ref(fs_info, delayed_refs, head, ref, seq))
628 struct btrfs_delayed_ref_root *delayed_refs)
632 lockdep_assert_held(&delayed_refs->lock);
634 head = find_ref_head(delayed_refs, delayed_refs->run_delayed_start,
636 if (!head && delayed_refs->run_delayed_start != 0) {
637 delayed_refs->run_delayed_start = 0;
638 head = find_first_ref_head(delayed_refs);
648 if (delayed_refs->run_delayed_start == 0)
650 delayed_refs->run_delayed_start = 0;
658 WARN_ON(delayed_refs->num_heads_ready == 0);
659 delayed_refs->num_heads_ready--;
660 delayed_refs->run_delayed_start = head->bytenr +
665 void btrfs_delete_ref_head(struct btrfs_delayed_ref_root *delayed_refs,
668 lockdep_assert_held(&delayed_refs->lock);
671 rb_erase_cached(&head->href_node, &delayed_refs->href_root);
673 atomic_dec(&delayed_refs->num_entries);
674 delayed_refs->num_heads--;
676 delayed_refs->num_heads_ready--;
690 struct btrfs_delayed_ref_root *root = &trans->transaction->delayed_refs;
743 struct btrfs_delayed_ref_root *delayed_refs =
744 &trans->transaction->delayed_refs;
818 delayed_refs->pending_csums -= existing->num_bytes;
822 delayed_refs->pending_csums += existing->num_bytes;
910 struct btrfs_delayed_ref_root *delayed_refs;
913 delayed_refs = &trans->transaction->delayed_refs;
918 delayed_refs, qrecord))
926 existing = htree_insert(&delayed_refs->href_root,
944 delayed_refs->pending_csums += head_ref->num_bytes;
949 delayed_refs->num_heads++;
950 delayed_refs->num_heads_ready++;
951 atomic_inc(&delayed_refs->num_entries);
1065 struct btrfs_delayed_ref_root *delayed_refs;
1116 delayed_refs = &trans->transaction->delayed_refs;
1117 spin_lock(&delayed_refs->lock);
1127 spin_unlock(&delayed_refs->lock);
1157 struct btrfs_delayed_ref_root *delayed_refs;
1207 delayed_refs = &trans->transaction->delayed_refs;
1208 spin_lock(&delayed_refs->lock);
1218 spin_unlock(&delayed_refs->lock);
1243 struct btrfs_delayed_ref_root *delayed_refs;
1253 delayed_refs = &trans->transaction->delayed_refs;
1254 spin_lock(&delayed_refs->lock);
1259 spin_unlock(&delayed_refs->lock);
1293 btrfs_find_delayed_ref_head(struct btrfs_delayed_ref_root *delayed_refs, u64 bytenr)
1295 lockdep_assert_held(&delayed_refs->lock);
1297 return find_ref_head(delayed_refs, bytenr, false);