Value | Meaning |
---|---|
FS_SECRM_FL0x00000001 | Secure deletion |
FS_UNRM_FL0x00000002 | Undelete |
FS_COMPR_FL0x00000004 | Compress file |
FS_SYNC_FL0x00000008 | Synchronous updates |
FS_IMMUTABLE_FL0x00000010 | Immutable file |
FS_APPEND_FL0x00000020 | writes to file may only append |
FS_NODUMP_FL0x00000040 | do not dump file |
FS_NOATIME_FL0x00000080 | do not update atime |
FS_DIRTY_FL0x00000100 | Reserved for compression usage |
FS_COMPRBLK_FL0x00000200 | One or more compressed clusters |
FS_NOCOMP_FL0x00000400 | Don't compress |
FS_ENCRYPT_FL0x00000800 | Encrypted file |
FS_BTREE_FL0x00001000 | btree format dir |
FS_INDEX_FL0x00001000 | hash-indexed directory |
FS_IMAGIC_FL0x00002000 | AFS directory |
FS_JOURNAL_DATA_FL0x00004000 | Reserved for ext3 |
FS_NOTAIL_FL0x00008000 | file tail should not be merged |
FS_DIRSYNC_FL0x00010000 | dirsync behaviour (directories only) |
FS_TOPDIR_FL0x00020000 | Top of directory hierarchie |
FS_HUGE_FILE_FL0x00040000 | Reserved for ext4 |
FS_EXTENT_FL0x00080000 | Extents |
FS_VERITY_FL0x00100000 | Verity protected inode |
FS_EA_INODE_FL0x00200000 | Inode used for large EA |
FS_EOFBLOCKS_FL0x00400000 | Reserved for ext4 |
FS_NOCOW_FL0x00800000 | Do not cow file |
FS_DAX_FL0x02000000 | Inode is DAX |
FS_INLINE_DATA_FL0x10000000 | Reserved for ext4 |
FS_PROJINHERIT_FL0x20000000 | Create with parents projid |
FS_CASEFOLD_FL0x40000000 | Folder is case insensitive |
FS_RESERVED_FL0x80000000 | reserved for ext2 lib |
Inode flags (FS_IOC_GETFLAGS / FS_IOC_SETFLAGS)
Note: for historical reasons, these flags were originally used and defined for use by ext2/ext3, and then other file systems started using these flags so they wouldn't need to write their own version of chattr/lsattr (which was shipped as part of e2fsprogs). You should think twice before trying to use these flags in new contexts, or trying to assign these flags, since they are used both as the UAPI and the on-disk encoding for ext2/3/4. Also, we are almost out of 32-bit flags. :-)
We have recently hoisted FS_IOC_FSGETXATTR / FS_IOC_FSSETXATTR from XFS to the generic FS level interface. This uses a structure that has padding and hence has more room to grow, so it may be more appropriate for many new use cases.