|
@@ -1184,7 +1184,8 @@ struct ext4_super_block {
|
|
|
__u8 s_encrypt_pw_salt[16]; /* Salt used for string2key algorithm */
|
|
|
__le32 s_lpf_ino; /* Location of the lost+found inode */
|
|
|
__le32 s_prj_quota_inum; /* inode for tracking project quota */
|
|
|
- __le32 s_reserved[99]; /* Padding to the end of the block */
|
|
|
+ __le32 s_checksum_seed; /* crc32c(uuid) if csum_seed set */
|
|
|
+ __le32 s_reserved[98]; /* Padding to the end of the block */
|
|
|
__le32 s_checksum; /* crc32c(superblock) */
|
|
|
};
|
|
|
|
|
@@ -1584,7 +1585,7 @@ static inline int ext4_encrypted_inode(struct inode *inode)
|
|
|
#define EXT4_FEATURE_INCOMPAT_FLEX_BG 0x0200
|
|
|
#define EXT4_FEATURE_INCOMPAT_EA_INODE 0x0400 /* EA in inode */
|
|
|
#define EXT4_FEATURE_INCOMPAT_DIRDATA 0x1000 /* data in dirent */
|
|
|
-#define EXT4_FEATURE_INCOMPAT_BG_USE_META_CSUM 0x2000 /* use crc32c for bg */
|
|
|
+#define EXT4_FEATURE_INCOMPAT_CSUM_SEED 0x2000
|
|
|
#define EXT4_FEATURE_INCOMPAT_LARGEDIR 0x4000 /* >2GB or 3-lvl htree */
|
|
|
#define EXT4_FEATURE_INCOMPAT_INLINE_DATA 0x8000 /* data in inode */
|
|
|
#define EXT4_FEATURE_INCOMPAT_ENCRYPT 0x10000
|
|
@@ -1613,7 +1614,8 @@ static inline int ext4_encrypted_inode(struct inode *inode)
|
|
|
EXT4_FEATURE_INCOMPAT_FLEX_BG| \
|
|
|
EXT4_FEATURE_INCOMPAT_MMP | \
|
|
|
EXT4_FEATURE_INCOMPAT_INLINE_DATA | \
|
|
|
- EXT4_FEATURE_INCOMPAT_ENCRYPT)
|
|
|
+ EXT4_FEATURE_INCOMPAT_ENCRYPT | \
|
|
|
+ EXT4_FEATURE_INCOMPAT_CSUM_SEED)
|
|
|
#define EXT4_FEATURE_RO_COMPAT_SUPP (EXT4_FEATURE_RO_COMPAT_SPARSE_SUPER| \
|
|
|
EXT4_FEATURE_RO_COMPAT_LARGE_FILE| \
|
|
|
EXT4_FEATURE_RO_COMPAT_GDT_CSUM| \
|