Commit 5190db9f authored by Roman Anufriev's avatar Roman Anufriev Committed by Jan Kara
Browse files

fs/quota: update quota state flags scheme with project quota flags

Current quota state flags scheme doesn't include project quota and thus
shows all flags after DQUOT_USAGE_ENABLED wrong. Fix this and also add
DQUOT_NOLIST_DIRTY to the scheme.

Link: https://lore.kernel.org/r/1602989814-28922-1-git-send-email-dotdot@yandex-team.ru


Signed-off-by: default avatarRoman Anufriev <dotdot@yandex-team.ru>
Signed-off-by: default avatarJan Kara <jack@suse.cz>
parent b7cbaf59
Loading
Loading
Loading
Loading
+8 −7
Original line number Diff line number Diff line
@@ -448,17 +448,18 @@ struct quota_format_type {
};

/**
 * Quota state flags - they actually come in two flavors - for users and groups.
 * Quota state flags - they come in three flavors - for users, groups and projects.
 *
 * Actual typed flags layout:
 *				USRQUOTA	GRPQUOTA
 *  DQUOT_USAGE_ENABLED		0x0001		0x0002
 *  DQUOT_LIMITS_ENABLED	0x0004		0x0008
 *  DQUOT_SUSPENDED		0x0010		0x0020
 *				USRQUOTA	GRPQUOTA	PRJQUOTA
 *  DQUOT_USAGE_ENABLED		0x0001		0x0002		0x0004
 *  DQUOT_LIMITS_ENABLED	0x0008		0x0010		0x0020
 *  DQUOT_SUSPENDED		0x0040		0x0080		0x0100
 *
 * Following bits are used for non-typed flags:
 *  DQUOT_QUOTA_SYS_FILE	0x0040
 *  DQUOT_NEGATIVE_USAGE	0x0080
 *  DQUOT_QUOTA_SYS_FILE	0x0200
 *  DQUOT_NEGATIVE_USAGE	0x0400
 *  DQUOT_NOLIST_DIRTY		0x0800
 */
enum {
	_DQUOT_USAGE_ENABLED = 0,		/* Track disk usage for users */