diff options
Diffstat (limited to 'include/linux/ext2_fs.h')
-rw-r--r-- | include/linux/ext2_fs.h | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/include/linux/ext2_fs.h b/include/linux/ext2_fs.h index c3a051819363..121720d74e15 100644 --- a/include/linux/ext2_fs.h +++ b/include/linux/ext2_fs.h | |||
@@ -201,6 +201,23 @@ struct ext2_group_desc | |||
201 | EXT2_NOCOMP_FL | EXT2_JOURNAL_DATA_FL |\ | 201 | EXT2_NOCOMP_FL | EXT2_JOURNAL_DATA_FL |\ |
202 | EXT2_NOTAIL_FL | EXT2_DIRSYNC_FL) | 202 | EXT2_NOTAIL_FL | EXT2_DIRSYNC_FL) |
203 | 203 | ||
204 | /* Flags that are appropriate for regular files (all but dir-specific ones). */ | ||
205 | #define EXT2_REG_FLMASK (~(EXT2_DIRSYNC_FL | EXT2_TOPDIR_FL)) | ||
206 | |||
207 | /* Flags that are appropriate for non-directories/regular files. */ | ||
208 | #define EXT2_OTHER_FLMASK (EXT2_NODUMP_FL | EXT2_NOATIME_FL) | ||
209 | |||
210 | /* Mask out flags that are inappropriate for the given type of inode. */ | ||
211 | static inline __u32 ext2_mask_flags(umode_t mode, __u32 flags) | ||
212 | { | ||
213 | if (S_ISDIR(mode)) | ||
214 | return flags; | ||
215 | else if (S_ISREG(mode)) | ||
216 | return flags & EXT2_REG_FLMASK; | ||
217 | else | ||
218 | return flags & EXT2_OTHER_FLMASK; | ||
219 | } | ||
220 | |||
204 | /* | 221 | /* |
205 | * ioctl commands | 222 | * ioctl commands |
206 | */ | 223 | */ |