Commit f3c1c42e authored by Baokun Li's avatar Baokun Li Committed by Theodore Ts'o
Browse files

ext4: refactoring to use the unified helper ext4_quotas_off()



Rename ext4_quota_off_umount() to ext4_quotas_off(), and add type
parameter to replace open code in ext4_enable_quotas().

Signed-off-by: default avatarBaokun Li <libaokun1@huawei.com>
Reviewed-by: default avatarJan Kara <jack@suse.cz>
Link: https://lore.kernel.org/r/20230327141630.156875-3-libaokun1@huawei.com


Signed-off-by: default avatarTheodore Ts'o <tytso@mit.edu>
parent d13f9963
Loading
Loading
Loading
Loading
+7 −19
Original line number Diff line number Diff line
@@ -1165,12 +1165,12 @@ static void dump_orphan_list(struct super_block *sb, struct ext4_sb_info *sbi)
#ifdef CONFIG_QUOTA
static int ext4_quota_off(struct super_block *sb, int type);

static inline void ext4_quota_off_umount(struct super_block *sb)
static inline void ext4_quotas_off(struct super_block *sb, int type)
{
	int type;
	BUG_ON(type > EXT4_MAXQUOTAS);

	/* Use our quota_off function to clear inode flags etc. */
	for (type = 0; type < EXT4_MAXQUOTAS; type++)
	for (type--; type >= 0; type--)
		ext4_quota_off(sb, type);
}

@@ -1186,7 +1186,7 @@ static inline char *get_qf_name(struct super_block *sb,
					 lockdep_is_held(&sb->s_umount));
}
#else
static inline void ext4_quota_off_umount(struct super_block *sb)
static inline void ext4_quotas_off(struct super_block *sb, int type)
{
}
#endif
@@ -1286,7 +1286,7 @@ static void ext4_put_super(struct super_block *sb)
			 &sb->s_uuid);

	ext4_unregister_li_request(sb);
	ext4_quota_off_umount(sb);
	ext4_quotas_off(sb, EXT4_MAXQUOTAS);

	flush_work(&sbi->s_error_work);
	destroy_workqueue(sbi->rsv_conversion_wq);
@@ -5597,7 +5597,7 @@ static int __ext4_fill_super(struct fs_context *fc, struct super_block *sb)
	return 0;

failed_mount10:
	ext4_quota_off_umount(sb);
	ext4_quotas_off(sb, EXT4_MAXQUOTAS);
failed_mount9: __maybe_unused
	ext4_release_orphan_info(sb);
failed_mount8:
@@ -7044,20 +7044,8 @@ int ext4_enable_quotas(struct super_block *sb)
					"(type=%d, err=%d, ino=%lu). "
					"Please run e2fsck to fix.", type,
					err, qf_inums[type]);
				for (type--; type >= 0; type--) {
					struct inode *inode;

					inode = sb_dqopt(sb)->files[type];
					if (inode)
						inode = igrab(inode);
					dquot_quota_off(sb, type);
					if (inode) {
						lockdep_set_quota_inode(inode,
							I_DATA_SEM_NORMAL);
						iput(inode);
					}
				}

				ext4_quotas_off(sb, type);
				return err;
			}
		}