qg 114 fs/btrfs/qgroup.c static void btrfs_qgroup_update_old_refcnt(struct btrfs_qgroup *qg, u64 seq, qg 117 fs/btrfs/qgroup.c if (qg->old_refcnt < seq) qg 118 fs/btrfs/qgroup.c qg->old_refcnt = seq; qg 119 fs/btrfs/qgroup.c qg->old_refcnt += mod; qg 122 fs/btrfs/qgroup.c static void btrfs_qgroup_update_new_refcnt(struct btrfs_qgroup *qg, u64 seq, qg 125 fs/btrfs/qgroup.c if (qg->new_refcnt < seq) qg 126 fs/btrfs/qgroup.c qg->new_refcnt = seq; qg 127 fs/btrfs/qgroup.c qg->new_refcnt += mod; qg 130 fs/btrfs/qgroup.c static inline u64 btrfs_qgroup_get_old_refcnt(struct btrfs_qgroup *qg, u64 seq) qg 132 fs/btrfs/qgroup.c if (qg->old_refcnt < seq) qg 134 fs/btrfs/qgroup.c return qg->old_refcnt - seq; qg 137 fs/btrfs/qgroup.c static inline u64 btrfs_qgroup_get_new_refcnt(struct btrfs_qgroup *qg, u64 seq) qg 139 fs/btrfs/qgroup.c if (qg->new_refcnt < seq) qg 141 fs/btrfs/qgroup.c return qg->new_refcnt - seq; qg 154 fs/btrfs/qgroup.c static inline u64 qgroup_to_aux(struct btrfs_qgroup *qg) qg 156 fs/btrfs/qgroup.c return (u64)(uintptr_t)qg; qg 2216 fs/btrfs/qgroup.c struct btrfs_qgroup *qg; qg 2223 fs/btrfs/qgroup.c qg = find_qgroup_rb(fs_info, unode->val); qg 2224 fs/btrfs/qgroup.c if (!qg) qg 2228 fs/btrfs/qgroup.c ret = ulist_add(qgroups, qg->qgroupid, qgroup_to_aux(qg), qg 2232 fs/btrfs/qgroup.c ret = ulist_add(tmp, qg->qgroupid, qgroup_to_aux(qg), GFP_ATOMIC); qg 2239 fs/btrfs/qgroup.c qg = unode_aux_to_qgroup(tmp_unode); qg 2241 fs/btrfs/qgroup.c btrfs_qgroup_update_old_refcnt(qg, seq, 1); qg 2243 fs/btrfs/qgroup.c btrfs_qgroup_update_new_refcnt(qg, seq, 1); qg 2244 fs/btrfs/qgroup.c list_for_each_entry(glist, &qg->groups, next_group) { qg 2305 fs/btrfs/qgroup.c struct btrfs_qgroup *qg; qg 2312 fs/btrfs/qgroup.c qg = unode_aux_to_qgroup(unode); qg 2313 fs/btrfs/qgroup.c cur_old_count = btrfs_qgroup_get_old_refcnt(qg, seq); qg 2314 fs/btrfs/qgroup.c cur_new_count = btrfs_qgroup_get_new_refcnt(qg, seq); qg 2316 fs/btrfs/qgroup.c trace_qgroup_update_counters(fs_info, qg, cur_old_count, qg 2321 fs/btrfs/qgroup.c qg->rfer += num_bytes; qg 2322 fs/btrfs/qgroup.c qg->rfer_cmpr += num_bytes; qg 2326 fs/btrfs/qgroup.c qg->rfer -= num_bytes; qg 2327 fs/btrfs/qgroup.c qg->rfer_cmpr -= num_bytes; qg 2337 fs/btrfs/qgroup.c qg->excl -= num_bytes; qg 2338 fs/btrfs/qgroup.c qg->excl_cmpr -= num_bytes; qg 2348 fs/btrfs/qgroup.c qg->excl += num_bytes; qg 2349 fs/btrfs/qgroup.c qg->excl_cmpr += num_bytes; qg 2362 fs/btrfs/qgroup.c qg->excl += num_bytes; qg 2363 fs/btrfs/qgroup.c qg->excl_cmpr += num_bytes; qg 2372 fs/btrfs/qgroup.c qg->excl -= num_bytes; qg 2373 fs/btrfs/qgroup.c qg->excl_cmpr -= num_bytes; qg 2381 fs/btrfs/qgroup.c qgroup_dirty(fs_info, qg); qg 2838 fs/btrfs/qgroup.c const struct btrfs_qgroup *qg, u64 num_bytes) qg 2843 fs/btrfs/qgroup.c if ((qg->lim_flags & BTRFS_QGROUP_LIMIT_MAX_RFER) && qg 2844 fs/btrfs/qgroup.c qgroup_rsv_total(qg) + (s64)qg->rfer + num_bytes > qg->max_rfer) qg 2847 fs/btrfs/qgroup.c if ((qg->lim_flags & BTRFS_QGROUP_LIMIT_MAX_EXCL) && qg 2848 fs/btrfs/qgroup.c qgroup_rsv_total(qg) + (s64)qg->excl + num_bytes > qg->max_excl) qg 2857 fs/btrfs/qgroup.c if ((qg->lim_flags & (BTRFS_QGROUP_LIMIT_MAX_RFER | qg 2859 fs/btrfs/qgroup.c if (qg->lim_flags & BTRFS_QGROUP_LIMIT_MAX_EXCL) { qg 2860 fs/btrfs/qgroup.c free = qg->max_excl - qgroup_rsv_total(qg) - qg->excl; qg 2861 fs/btrfs/qgroup.c threshold = min_t(u64, qg->max_excl / QGROUP_FREE_RATIO, qg 2864 fs/btrfs/qgroup.c free = qg->max_rfer - qgroup_rsv_total(qg) - qg->rfer; qg 2865 fs/btrfs/qgroup.c threshold = min_t(u64, qg->max_rfer / QGROUP_FREE_RATIO, qg 2921 fs/btrfs/qgroup.c struct btrfs_qgroup *qg; qg 2924 fs/btrfs/qgroup.c qg = unode_aux_to_qgroup(unode); qg 2926 fs/btrfs/qgroup.c if (enforce && !qgroup_check_limits(fs_info, qg, num_bytes)) { qg 2931 fs/btrfs/qgroup.c list_for_each_entry(glist, &qg->groups, next_group) { qg 2945 fs/btrfs/qgroup.c struct btrfs_qgroup *qg; qg 2947 fs/btrfs/qgroup.c qg = unode_aux_to_qgroup(unode); qg 2949 fs/btrfs/qgroup.c qgroup_rsv_add(fs_info, qg, num_bytes, type); qg 3010 fs/btrfs/qgroup.c struct btrfs_qgroup *qg; qg 3013 fs/btrfs/qgroup.c qg = unode_aux_to_qgroup(unode); qg 3015 fs/btrfs/qgroup.c qgroup_rsv_release(fs_info, qg, num_bytes, type); qg 3017 fs/btrfs/qgroup.c list_for_each_entry(glist, &qg->groups, next_group) { qg 3719 fs/btrfs/qgroup.c struct btrfs_qgroup *qg; qg 3722 fs/btrfs/qgroup.c qg = unode_aux_to_qgroup(unode); qg 3724 fs/btrfs/qgroup.c qgroup_rsv_release(fs_info, qg, num_bytes, qg 3726 fs/btrfs/qgroup.c qgroup_rsv_add(fs_info, qg, num_bytes, qg 3728 fs/btrfs/qgroup.c list_for_each_entry(glist, &qg->groups, next_group) {