mirror of
				https://github.com/torvalds/linux.git
				synced 2025-11-04 02:30:34 +02: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
					
				
					 1 changed files with 21 additions and 14 deletions
				
			
		| 
						 | 
					@ -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 a new issue