Lines Matching refs:num_bytes
70 struct btrfs_qgroup *qgroup, u64 num_bytes, in qgroup_rsv_add() argument
73 trace_qgroup_update_reserve(fs_info, qgroup, num_bytes, type); in qgroup_rsv_add()
74 qgroup->rsv.values[type] += num_bytes; in qgroup_rsv_add()
78 struct btrfs_qgroup *qgroup, u64 num_bytes, in qgroup_rsv_release() argument
81 trace_qgroup_update_reserve(fs_info, qgroup, -(s64)num_bytes, type); in qgroup_rsv_release()
82 if (qgroup->rsv.values[type] >= num_bytes) { in qgroup_rsv_release()
83 qgroup->rsv.values[type] -= num_bytes; in qgroup_rsv_release()
90 qgroup->rsv.values[type], num_bytes); in qgroup_rsv_release()
1321 u64 num_bytes = src->excl; in __qgroup_excl_accounting() local
1328 qgroup->rfer += sign * num_bytes; in __qgroup_excl_accounting()
1329 qgroup->rfer_cmpr += sign * num_bytes; in __qgroup_excl_accounting()
1331 WARN_ON(sign < 0 && qgroup->excl < num_bytes); in __qgroup_excl_accounting()
1332 qgroup->excl += sign * num_bytes; in __qgroup_excl_accounting()
1333 qgroup->excl_cmpr += sign * num_bytes; in __qgroup_excl_accounting()
1354 qgroup->rfer += sign * num_bytes; in __qgroup_excl_accounting()
1355 qgroup->rfer_cmpr += sign * num_bytes; in __qgroup_excl_accounting()
1356 WARN_ON(sign < 0 && qgroup->excl < num_bytes); in __qgroup_excl_accounting()
1357 qgroup->excl += sign * num_bytes; in __qgroup_excl_accounting()
1362 qgroup->excl_cmpr += sign * num_bytes; in __qgroup_excl_accounting()
1791 u64 num_bytes, gfp_t gfp_flag) in btrfs_qgroup_trace_extent() argument
1799 || bytenr == 0 || num_bytes == 0) in btrfs_qgroup_trace_extent()
1807 record->num_bytes = num_bytes; in btrfs_qgroup_trace_extent()
1828 u64 bytenr, num_bytes; in btrfs_qgroup_trace_leaf_items() local
1851 num_bytes = btrfs_file_extent_disk_num_bytes(eb, fi); in btrfs_qgroup_trace_leaf_items()
1853 ret = btrfs_qgroup_trace_extent(trans, bytenr, num_bytes, in btrfs_qgroup_trace_leaf_items()
2485 u64 num_bytes, u64 seq) in qgroup_update_counters() argument
2505 qg->rfer += num_bytes; in qgroup_update_counters()
2506 qg->rfer_cmpr += num_bytes; in qgroup_update_counters()
2510 qg->rfer -= num_bytes; in qgroup_update_counters()
2511 qg->rfer_cmpr -= num_bytes; in qgroup_update_counters()
2521 qg->excl -= num_bytes; in qgroup_update_counters()
2522 qg->excl_cmpr -= num_bytes; in qgroup_update_counters()
2532 qg->excl += num_bytes; in qgroup_update_counters()
2533 qg->excl_cmpr += num_bytes; in qgroup_update_counters()
2546 qg->excl += num_bytes; in qgroup_update_counters()
2547 qg->excl_cmpr += num_bytes; in qgroup_update_counters()
2556 qg->excl -= num_bytes; in qgroup_update_counters()
2557 qg->excl_cmpr -= num_bytes; in qgroup_update_counters()
2600 u64 num_bytes, struct ulist *old_roots, in btrfs_qgroup_account_extent() argument
2636 num_bytes, nr_old_roots, nr_new_roots); in btrfs_qgroup_account_extent()
2675 num_bytes, seq); in btrfs_qgroup_account_extent()
2745 record->num_bytes, in btrfs_qgroup_account_extents()
3021 static bool qgroup_check_limits(const struct btrfs_qgroup *qg, u64 num_bytes) in qgroup_check_limits() argument
3024 qgroup_rsv_total(qg) + (s64)qg->rfer + num_bytes > qg->max_rfer) in qgroup_check_limits()
3028 qgroup_rsv_total(qg) + (s64)qg->excl + num_bytes > qg->max_excl) in qgroup_check_limits()
3034 static int qgroup_reserve(struct btrfs_root *root, u64 num_bytes, bool enforce, in qgroup_reserve() argument
3047 if (num_bytes == 0) in qgroup_reserve()
3078 if (enforce && !qgroup_check_limits(qg, num_bytes)) { in qgroup_reserve()
3101 qgroup_rsv_add(fs_info, qg, num_bytes, type); in qgroup_reserve()
3119 u64 ref_root, u64 num_bytes, in btrfs_qgroup_free_refroot() argument
3130 if (num_bytes == 0) in btrfs_qgroup_free_refroot()
3133 if (num_bytes == (u64)-1 && type != BTRFS_QGROUP_RSV_META_PERTRANS) { in btrfs_qgroup_free_refroot()
3146 if (num_bytes == (u64)-1) in btrfs_qgroup_free_refroot()
3151 num_bytes = qgroup->rsv.values[type]; in btrfs_qgroup_free_refroot()
3165 qgroup_rsv_release(fs_info, qg, num_bytes, type); in btrfs_qgroup_free_refroot()
3206 u64 num_bytes; in qgroup_rescan_leaf() local
3258 num_bytes = fs_info->nodesize; in qgroup_rescan_leaf()
3260 num_bytes = found.offset; in qgroup_rescan_leaf()
3268 num_bytes, NULL, roots); in qgroup_rescan_leaf()
3896 static void add_root_meta_rsv(struct btrfs_root *root, int num_bytes, in add_root_meta_rsv() argument
3902 if (num_bytes == 0) in add_root_meta_rsv()
3907 root->qgroup_meta_rsv_prealloc += num_bytes; in add_root_meta_rsv()
3909 root->qgroup_meta_rsv_pertrans += num_bytes; in add_root_meta_rsv()
3913 static int sub_root_meta_rsv(struct btrfs_root *root, int num_bytes, in sub_root_meta_rsv() argument
3919 if (num_bytes == 0) in sub_root_meta_rsv()
3924 num_bytes = min_t(u64, root->qgroup_meta_rsv_prealloc, in sub_root_meta_rsv()
3925 num_bytes); in sub_root_meta_rsv()
3926 root->qgroup_meta_rsv_prealloc -= num_bytes; in sub_root_meta_rsv()
3928 num_bytes = min_t(u64, root->qgroup_meta_rsv_pertrans, in sub_root_meta_rsv()
3929 num_bytes); in sub_root_meta_rsv()
3930 root->qgroup_meta_rsv_pertrans -= num_bytes; in sub_root_meta_rsv()
3933 return num_bytes; in sub_root_meta_rsv()
3936 int btrfs_qgroup_reserve_meta(struct btrfs_root *root, int num_bytes, in btrfs_qgroup_reserve_meta() argument
3943 !is_fstree(root->root_key.objectid) || num_bytes == 0) in btrfs_qgroup_reserve_meta()
3946 BUG_ON(num_bytes != round_down(num_bytes, fs_info->nodesize)); in btrfs_qgroup_reserve_meta()
3947 trace_qgroup_meta_reserve(root, (s64)num_bytes, type); in btrfs_qgroup_reserve_meta()
3948 ret = qgroup_reserve(root, num_bytes, enforce, type); in btrfs_qgroup_reserve_meta()
3959 add_root_meta_rsv(root, num_bytes, type); in btrfs_qgroup_reserve_meta()
3963 int __btrfs_qgroup_reserve_meta(struct btrfs_root *root, int num_bytes, in __btrfs_qgroup_reserve_meta() argument
3968 ret = btrfs_qgroup_reserve_meta(root, num_bytes, type, enforce); in __btrfs_qgroup_reserve_meta()
3975 return btrfs_qgroup_reserve_meta(root, num_bytes, type, enforce); in __btrfs_qgroup_reserve_meta()
3993 void __btrfs_qgroup_free_meta(struct btrfs_root *root, int num_bytes, in __btrfs_qgroup_free_meta() argument
4007 num_bytes = sub_root_meta_rsv(root, num_bytes, type); in __btrfs_qgroup_free_meta()
4008 BUG_ON(num_bytes != round_down(num_bytes, fs_info->nodesize)); in __btrfs_qgroup_free_meta()
4009 trace_qgroup_meta_reserve(root, -(s64)num_bytes, type); in __btrfs_qgroup_free_meta()
4011 num_bytes, type); in __btrfs_qgroup_free_meta()
4015 int num_bytes) in qgroup_convert_meta() argument
4022 if (num_bytes == 0) in qgroup_convert_meta()
4043 qgroup_rsv_release(fs_info, qg, num_bytes, in qgroup_convert_meta()
4045 qgroup_rsv_add(fs_info, qg, num_bytes, in qgroup_convert_meta()
4059 void btrfs_qgroup_convert_reserved_meta(struct btrfs_root *root, int num_bytes) in btrfs_qgroup_convert_reserved_meta() argument
4067 num_bytes = sub_root_meta_rsv(root, num_bytes, in btrfs_qgroup_convert_reserved_meta()
4069 trace_qgroup_meta_convert(root, num_bytes); in btrfs_qgroup_convert_reserved_meta()
4070 qgroup_convert_meta(fs_info, root->root_key.objectid, num_bytes); in btrfs_qgroup_convert_reserved_meta()