diff options
Diffstat (limited to 'include/linux/quotaops.h')
-rw-r--r-- | include/linux/quotaops.h | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/include/linux/quotaops.h b/include/linux/quotaops.h index 0c8f9fe462af..38218c1334b1 100644 --- a/include/linux/quotaops.h +++ b/include/linux/quotaops.h | |||
@@ -14,6 +14,8 @@ | |||
14 | 14 | ||
15 | #include <linux/fs.h> | 15 | #include <linux/fs.h> |
16 | 16 | ||
17 | #define sb_dqopt(sb) (&(sb)->s_dquot) | ||
18 | |||
17 | #if defined(CONFIG_QUOTA) | 19 | #if defined(CONFIG_QUOTA) |
18 | 20 | ||
19 | /* | 21 | /* |
@@ -52,6 +54,25 @@ void vfs_dq_drop(struct inode *inode); | |||
52 | int vfs_dq_transfer(struct inode *inode, struct iattr *iattr); | 54 | int vfs_dq_transfer(struct inode *inode, struct iattr *iattr); |
53 | int vfs_dq_quota_on_remount(struct super_block *sb); | 55 | int vfs_dq_quota_on_remount(struct super_block *sb); |
54 | 56 | ||
57 | #define sb_dqinfo(sb, type) (sb_dqopt(sb)->info+(type)) | ||
58 | |||
59 | /* | ||
60 | * Functions for checking status of quota | ||
61 | */ | ||
62 | |||
63 | #define sb_has_quota_enabled(sb, type) ((type)==USRQUOTA ? \ | ||
64 | (sb_dqopt(sb)->flags & DQUOT_USR_ENABLED) : (sb_dqopt(sb)->flags & DQUOT_GRP_ENABLED)) | ||
65 | |||
66 | #define sb_any_quota_enabled(sb) (sb_has_quota_enabled(sb, USRQUOTA) | \ | ||
67 | sb_has_quota_enabled(sb, GRPQUOTA)) | ||
68 | |||
69 | #define sb_has_quota_suspended(sb, type) \ | ||
70 | ((type) == USRQUOTA ? (sb_dqopt(sb)->flags & DQUOT_USR_SUSPENDED) : \ | ||
71 | (sb_dqopt(sb)->flags & DQUOT_GRP_SUSPENDED)) | ||
72 | |||
73 | #define sb_any_quota_suspended(sb) (sb_has_quota_suspended(sb, USRQUOTA) | \ | ||
74 | sb_has_quota_suspended(sb, GRPQUOTA)) | ||
75 | |||
55 | /* | 76 | /* |
56 | * Operations supported for diskquotas. | 77 | * Operations supported for diskquotas. |
57 | */ | 78 | */ |
@@ -159,6 +180,11 @@ static inline int vfs_dq_off(struct super_block *sb, int remount) | |||
159 | 180 | ||
160 | #else | 181 | #else |
161 | 182 | ||
183 | #define sb_has_quota_enabled(sb, type) 0 | ||
184 | #define sb_any_quota_enabled(sb) 0 | ||
185 | #define sb_has_quota_suspended(sb, type) 0 | ||
186 | #define sb_any_quota_suspended(sb) 0 | ||
187 | |||
162 | /* | 188 | /* |
163 | * NO-OP when quota not configured. | 189 | * NO-OP when quota not configured. |
164 | */ | 190 | */ |