mirror of
https://github.com/edk2-porting/linux-next.git
synced 2025-01-02 02:34:05 +08:00
btrfs: rename helper macros for qgroup and aux data casts
The helpers are not meant to be generic, the name is misleading. Convert them to static inlines for type checking. Signed-off-by: David Sterba <dsterba@suse.com>
This commit is contained in:
parent
5d9dbe617a
commit
ef2fff64fd
@ -131,8 +131,15 @@ struct btrfs_qgroup_list {
|
|||||||
struct btrfs_qgroup *member;
|
struct btrfs_qgroup *member;
|
||||||
};
|
};
|
||||||
|
|
||||||
#define ptr_to_u64(x) ((u64)(uintptr_t)x)
|
static inline u64 qgroup_to_aux(struct btrfs_qgroup *qg)
|
||||||
#define u64_to_ptr(x) ((struct btrfs_qgroup *)(uintptr_t)x)
|
{
|
||||||
|
return (u64)(uintptr_t)qg;
|
||||||
|
}
|
||||||
|
|
||||||
|
static inline struct btrfs_qgroup* unode_aux_to_qgroup(struct ulist_node *n)
|
||||||
|
{
|
||||||
|
return (struct btrfs_qgroup *)(uintptr_t)n->aux;
|
||||||
|
}
|
||||||
|
|
||||||
static int
|
static int
|
||||||
qgroup_rescan_init(struct btrfs_fs_info *fs_info, u64 progress_objectid,
|
qgroup_rescan_init(struct btrfs_fs_info *fs_info, u64 progress_objectid,
|
||||||
@ -1066,7 +1073,7 @@ static int __qgroup_excl_accounting(struct btrfs_fs_info *fs_info,
|
|||||||
/* Get all of the parent groups that contain this qgroup */
|
/* Get all of the parent groups that contain this qgroup */
|
||||||
list_for_each_entry(glist, &qgroup->groups, next_group) {
|
list_for_each_entry(glist, &qgroup->groups, next_group) {
|
||||||
ret = ulist_add(tmp, glist->group->qgroupid,
|
ret = ulist_add(tmp, glist->group->qgroupid,
|
||||||
ptr_to_u64(glist->group), GFP_ATOMIC);
|
qgroup_to_aux(glist->group), GFP_ATOMIC);
|
||||||
if (ret < 0)
|
if (ret < 0)
|
||||||
goto out;
|
goto out;
|
||||||
}
|
}
|
||||||
@ -1074,7 +1081,7 @@ static int __qgroup_excl_accounting(struct btrfs_fs_info *fs_info,
|
|||||||
/* Iterate all of the parents and adjust their reference counts */
|
/* Iterate all of the parents and adjust their reference counts */
|
||||||
ULIST_ITER_INIT(&uiter);
|
ULIST_ITER_INIT(&uiter);
|
||||||
while ((unode = ulist_next(tmp, &uiter))) {
|
while ((unode = ulist_next(tmp, &uiter))) {
|
||||||
qgroup = u64_to_ptr(unode->aux);
|
qgroup = unode_aux_to_qgroup(unode);
|
||||||
qgroup->rfer += sign * num_bytes;
|
qgroup->rfer += sign * num_bytes;
|
||||||
qgroup->rfer_cmpr += sign * num_bytes;
|
qgroup->rfer_cmpr += sign * num_bytes;
|
||||||
WARN_ON(sign < 0 && qgroup->excl < num_bytes);
|
WARN_ON(sign < 0 && qgroup->excl < num_bytes);
|
||||||
@ -1087,7 +1094,7 @@ static int __qgroup_excl_accounting(struct btrfs_fs_info *fs_info,
|
|||||||
/* Add any parents of the parents */
|
/* Add any parents of the parents */
|
||||||
list_for_each_entry(glist, &qgroup->groups, next_group) {
|
list_for_each_entry(glist, &qgroup->groups, next_group) {
|
||||||
ret = ulist_add(tmp, glist->group->qgroupid,
|
ret = ulist_add(tmp, glist->group->qgroupid,
|
||||||
ptr_to_u64(glist->group), GFP_ATOMIC);
|
qgroup_to_aux(glist->group), GFP_ATOMIC);
|
||||||
if (ret < 0)
|
if (ret < 0)
|
||||||
goto out;
|
goto out;
|
||||||
}
|
}
|
||||||
@ -1535,30 +1542,30 @@ static int qgroup_update_refcnt(struct btrfs_fs_info *fs_info,
|
|||||||
continue;
|
continue;
|
||||||
|
|
||||||
ulist_reinit(tmp);
|
ulist_reinit(tmp);
|
||||||
ret = ulist_add(qgroups, qg->qgroupid, ptr_to_u64(qg),
|
ret = ulist_add(qgroups, qg->qgroupid, qgroup_to_aux(qg),
|
||||||
GFP_ATOMIC);
|
GFP_ATOMIC);
|
||||||
if (ret < 0)
|
if (ret < 0)
|
||||||
return ret;
|
return ret;
|
||||||
ret = ulist_add(tmp, qg->qgroupid, ptr_to_u64(qg), GFP_ATOMIC);
|
ret = ulist_add(tmp, qg->qgroupid, qgroup_to_aux(qg), GFP_ATOMIC);
|
||||||
if (ret < 0)
|
if (ret < 0)
|
||||||
return ret;
|
return ret;
|
||||||
ULIST_ITER_INIT(&tmp_uiter);
|
ULIST_ITER_INIT(&tmp_uiter);
|
||||||
while ((tmp_unode = ulist_next(tmp, &tmp_uiter))) {
|
while ((tmp_unode = ulist_next(tmp, &tmp_uiter))) {
|
||||||
struct btrfs_qgroup_list *glist;
|
struct btrfs_qgroup_list *glist;
|
||||||
|
|
||||||
qg = u64_to_ptr(tmp_unode->aux);
|
qg = unode_aux_to_qgroup(tmp_unode);
|
||||||
if (update_old)
|
if (update_old)
|
||||||
btrfs_qgroup_update_old_refcnt(qg, seq, 1);
|
btrfs_qgroup_update_old_refcnt(qg, seq, 1);
|
||||||
else
|
else
|
||||||
btrfs_qgroup_update_new_refcnt(qg, seq, 1);
|
btrfs_qgroup_update_new_refcnt(qg, seq, 1);
|
||||||
list_for_each_entry(glist, &qg->groups, next_group) {
|
list_for_each_entry(glist, &qg->groups, next_group) {
|
||||||
ret = ulist_add(qgroups, glist->group->qgroupid,
|
ret = ulist_add(qgroups, glist->group->qgroupid,
|
||||||
ptr_to_u64(glist->group),
|
qgroup_to_aux(glist->group),
|
||||||
GFP_ATOMIC);
|
GFP_ATOMIC);
|
||||||
if (ret < 0)
|
if (ret < 0)
|
||||||
return ret;
|
return ret;
|
||||||
ret = ulist_add(tmp, glist->group->qgroupid,
|
ret = ulist_add(tmp, glist->group->qgroupid,
|
||||||
ptr_to_u64(glist->group),
|
qgroup_to_aux(glist->group),
|
||||||
GFP_ATOMIC);
|
GFP_ATOMIC);
|
||||||
if (ret < 0)
|
if (ret < 0)
|
||||||
return ret;
|
return ret;
|
||||||
@ -1619,7 +1626,7 @@ static int qgroup_update_counters(struct btrfs_fs_info *fs_info,
|
|||||||
while ((unode = ulist_next(qgroups, &uiter))) {
|
while ((unode = ulist_next(qgroups, &uiter))) {
|
||||||
bool dirty = false;
|
bool dirty = false;
|
||||||
|
|
||||||
qg = u64_to_ptr(unode->aux);
|
qg = unode_aux_to_qgroup(unode);
|
||||||
cur_old_count = btrfs_qgroup_get_old_refcnt(qg, seq);
|
cur_old_count = btrfs_qgroup_get_old_refcnt(qg, seq);
|
||||||
cur_new_count = btrfs_qgroup_get_new_refcnt(qg, seq);
|
cur_new_count = btrfs_qgroup_get_new_refcnt(qg, seq);
|
||||||
|
|
||||||
@ -2125,7 +2132,7 @@ static int qgroup_reserve(struct btrfs_root *root, u64 num_bytes)
|
|||||||
struct btrfs_qgroup *qg;
|
struct btrfs_qgroup *qg;
|
||||||
struct btrfs_qgroup_list *glist;
|
struct btrfs_qgroup_list *glist;
|
||||||
|
|
||||||
qg = u64_to_ptr(unode->aux);
|
qg = unode_aux_to_qgroup(unode);
|
||||||
|
|
||||||
if ((qg->lim_flags & BTRFS_QGROUP_LIMIT_MAX_RFER) &&
|
if ((qg->lim_flags & BTRFS_QGROUP_LIMIT_MAX_RFER) &&
|
||||||
qg->reserved + (s64)qg->rfer + num_bytes >
|
qg->reserved + (s64)qg->rfer + num_bytes >
|
||||||
@ -2157,7 +2164,7 @@ static int qgroup_reserve(struct btrfs_root *root, u64 num_bytes)
|
|||||||
while ((unode = ulist_next(fs_info->qgroup_ulist, &uiter))) {
|
while ((unode = ulist_next(fs_info->qgroup_ulist, &uiter))) {
|
||||||
struct btrfs_qgroup *qg;
|
struct btrfs_qgroup *qg;
|
||||||
|
|
||||||
qg = u64_to_ptr(unode->aux);
|
qg = unode_aux_to_qgroup(unode);
|
||||||
|
|
||||||
qg->reserved += num_bytes;
|
qg->reserved += num_bytes;
|
||||||
}
|
}
|
||||||
@ -2202,7 +2209,7 @@ void btrfs_qgroup_free_refroot(struct btrfs_fs_info *fs_info,
|
|||||||
struct btrfs_qgroup *qg;
|
struct btrfs_qgroup *qg;
|
||||||
struct btrfs_qgroup_list *glist;
|
struct btrfs_qgroup_list *glist;
|
||||||
|
|
||||||
qg = u64_to_ptr(unode->aux);
|
qg = unode_aux_to_qgroup(unode);
|
||||||
|
|
||||||
qg->reserved -= num_bytes;
|
qg->reserved -= num_bytes;
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user