Lines Matching refs:generic_ref
764 struct btrfs_ref *generic_ref, in init_delayed_ref_head() argument
772 BUG_ON(generic_ref->type != BTRFS_REF_DATA && reserved); in init_delayed_ref_head()
774 switch (generic_ref->action) { in init_delayed_ref_head()
806 head_ref->bytenr = generic_ref->bytenr; in init_delayed_ref_head()
807 head_ref->num_bytes = generic_ref->num_bytes; in init_delayed_ref_head()
811 head_ref->owning_root = generic_ref->owning_root; in init_delayed_ref_head()
812 head_ref->is_data = (generic_ref->type == BTRFS_REF_DATA); in init_delayed_ref_head()
813 head_ref->is_system = (generic_ref->ref_root == BTRFS_CHUNK_TREE_OBJECTID); in init_delayed_ref_head()
823 if (generic_ref->type == BTRFS_REF_METADATA) in init_delayed_ref_head()
824 head_ref->level = generic_ref->tree_ref.level; in init_delayed_ref_head()
829 if (generic_ref->ref_root && reserved) { in init_delayed_ref_head()
831 qrecord->data_rsv_refroot = generic_ref->ref_root; in init_delayed_ref_head()
833 qrecord->bytenr = generic_ref->bytenr; in init_delayed_ref_head()
834 qrecord->num_bytes = generic_ref->num_bytes; in init_delayed_ref_head()
937 struct btrfs_ref *generic_ref) in init_delayed_ref_common() argument
939 int action = generic_ref->action; in init_delayed_ref_common()
945 if (is_fstree(generic_ref->ref_root)) in init_delayed_ref_common()
949 ref->bytenr = generic_ref->bytenr; in init_delayed_ref_common()
950 ref->num_bytes = generic_ref->num_bytes; in init_delayed_ref_common()
954 ref->type = btrfs_ref_type(generic_ref); in init_delayed_ref_common()
955 ref->ref_root = generic_ref->ref_root; in init_delayed_ref_common()
956 ref->parent = generic_ref->parent; in init_delayed_ref_common()
960 if (generic_ref->type == BTRFS_REF_DATA) in init_delayed_ref_common()
961 ref->data_ref = generic_ref->data_ref; in init_delayed_ref_common()
963 ref->tree_ref = generic_ref->tree_ref; in init_delayed_ref_common()
966 void btrfs_init_tree_ref(struct btrfs_ref *generic_ref, int level, u64 mod_root, in btrfs_init_tree_ref() argument
971 generic_ref->real_root = mod_root ?: generic_ref->ref_root; in btrfs_init_tree_ref()
973 generic_ref->tree_ref.level = level; in btrfs_init_tree_ref()
974 generic_ref->type = BTRFS_REF_METADATA; in btrfs_init_tree_ref()
975 if (skip_qgroup || !(is_fstree(generic_ref->ref_root) && in btrfs_init_tree_ref()
977 generic_ref->skip_qgroup = true; in btrfs_init_tree_ref()
979 generic_ref->skip_qgroup = false; in btrfs_init_tree_ref()
983 void btrfs_init_data_ref(struct btrfs_ref *generic_ref, u64 ino, u64 offset, in btrfs_init_data_ref() argument
988 generic_ref->real_root = mod_root ?: generic_ref->ref_root; in btrfs_init_data_ref()
990 generic_ref->data_ref.objectid = ino; in btrfs_init_data_ref()
991 generic_ref->data_ref.offset = offset; in btrfs_init_data_ref()
992 generic_ref->type = BTRFS_REF_DATA; in btrfs_init_data_ref()
993 if (skip_qgroup || !(is_fstree(generic_ref->ref_root) && in btrfs_init_data_ref()
995 generic_ref->skip_qgroup = true; in btrfs_init_data_ref()
997 generic_ref->skip_qgroup = false; in btrfs_init_data_ref()
1001 struct btrfs_ref *generic_ref, in add_delayed_ref() argument
1012 int action = generic_ref->action; in add_delayed_ref()
1026 if (btrfs_qgroup_full_accounting(fs_info) && !generic_ref->skip_qgroup) { in add_delayed_ref()
1033 generic_ref->bytenr >> fs_info->sectorsize_bits, in add_delayed_ref()
1040 init_delayed_ref_common(fs_info, node, generic_ref); in add_delayed_ref()
1041 init_delayed_ref_head(head_ref, generic_ref, record, reserved); in add_delayed_ref()
1069 if (generic_ref->type == BTRFS_REF_DATA) in add_delayed_ref()
1094 struct btrfs_ref *generic_ref, in btrfs_add_delayed_tree_ref() argument
1097 ASSERT(generic_ref->type == BTRFS_REF_METADATA && generic_ref->action); in btrfs_add_delayed_tree_ref()
1098 return add_delayed_ref(trans, generic_ref, extent_op, 0); in btrfs_add_delayed_tree_ref()
1105 struct btrfs_ref *generic_ref, in btrfs_add_delayed_data_ref() argument
1108 ASSERT(generic_ref->type == BTRFS_REF_DATA && generic_ref->action); in btrfs_add_delayed_data_ref()
1109 return add_delayed_ref(trans, generic_ref, NULL, reserved); in btrfs_add_delayed_data_ref()
1119 struct btrfs_ref generic_ref = { in btrfs_add_delayed_extent_op() local
1131 init_delayed_ref_head(head_ref, &generic_ref, NULL, 0); in btrfs_add_delayed_extent_op()