Whamcloud - gitweb
Reserve codepoints for the fsverity feature.
authorTheodore Ts'o <tytso@mit.edu>
Tue, 14 Aug 2018 02:39:27 +0000 (22:39 -0400)
committerTheodore Ts'o <tytso@mit.edu>
Tue, 14 Aug 2018 02:39:27 +0000 (22:39 -0400)
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
lib/e2p/feature.c
lib/e2p/pf.c
lib/ext2fs/ext2_fs.h
misc/mke2fs.c
misc/tune2fs.c

index 0fab9c7..e3b0dab 100644 (file)
@@ -74,6 +74,8 @@ static struct feature feature_list[] = {
                        "project"},
        {       E2P_FEATURE_RO_INCOMPAT, EXT4_FEATURE_RO_COMPAT_SHARED_BLOCKS,
                        "shared_blocks"},
+       {       E2P_FEATURE_RO_INCOMPAT, EXT4_FEATURE_RO_COMPAT_VERITY,
+                       "verity"},
 
        {       E2P_FEATURE_INCOMPAT, EXT2_FEATURE_INCOMPAT_COMPRESSION,
                        "compression" },
index f93f22f..1c4bdde 100644 (file)
@@ -46,6 +46,7 @@ static struct flags_name flags_array[] = {
        { FS_NOCOW_FL, "C", "No_COW" },
        { EXT4_INLINE_DATA_FL, "N", "Inline_Data" },
        { EXT4_PROJINHERIT_FL, "P", "Project_Hierarchy" },
+       { EXT4_PROJINHERIT_FL, "V", "Verity" },
        { 0, NULL, NULL }
 };
 
index 9fd59e3..4ad09f1 100644 (file)
@@ -321,6 +321,7 @@ struct ext2_dx_tail {
 #define EXT2_TOPDIR_FL                 0x00020000 /* Top of directory hierarchies*/
 #define EXT4_HUGE_FILE_FL               0x00040000 /* Set to each huge file */
 #define EXT4_EXTENTS_FL                0x00080000 /* Inode uses extents */
+#define EXT4_VERITY_FL                 0x00100000 /* Verity protected inode */
 #define EXT4_EA_INODE_FL               0x00200000 /* Inode used for large EA */
 /* EXT4_EOFBLOCKS_FL 0x00400000 was here */
 #define FS_NOCOW_FL                    0x00800000 /* Do not cow file */
@@ -812,7 +813,7 @@ struct ext2_super_block {
 #define EXT4_FEATURE_RO_COMPAT_READONLY                0x1000
 #define EXT4_FEATURE_RO_COMPAT_PROJECT         0x2000 /* Project quota */
 #define EXT4_FEATURE_RO_COMPAT_SHARED_BLOCKS   0x4000
-
+#define EXT4_FEATURE_RO_COMPAT_VERITY          0x8000
 
 #define EXT2_FEATURE_INCOMPAT_COMPRESSION      0x0001
 #define EXT2_FEATURE_INCOMPAT_FILETYPE         0x0002
@@ -905,6 +906,7 @@ EXT4_FEATURE_RO_COMPAT_FUNCS(replica,               4, REPLICA)
 EXT4_FEATURE_RO_COMPAT_FUNCS(readonly,         4, READONLY)
 EXT4_FEATURE_RO_COMPAT_FUNCS(project,          4, PROJECT)
 EXT4_FEATURE_RO_COMPAT_FUNCS(shared_blocks,    4, SHARED_BLOCKS)
+EXT4_FEATURE_RO_COMPAT_FUNCS(verity,           4, VERITY)
 
 EXT4_FEATURE_INCOMPAT_FUNCS(compression,       2, COMPRESSION)
 EXT4_FEATURE_INCOMPAT_FUNCS(filetype,          2, FILETYPE)
@@ -930,7 +932,8 @@ EXT4_FEATURE_INCOMPAT_FUNCS(encrypt,                4, ENCRYPT)
 #define EXT2_FEATURE_RO_COMPAT_SUPP    (EXT2_FEATURE_RO_COMPAT_SPARSE_SUPER| \
                                         EXT2_FEATURE_RO_COMPAT_LARGE_FILE| \
                                         EXT4_FEATURE_RO_COMPAT_DIR_NLINK| \
-                                        EXT2_FEATURE_RO_COMPAT_BTREE_DIR)
+                                        EXT2_FEATURE_RO_COMPAT_BTREE_DIR| \
+                                        EXT4_FEATURE_RO_COMPAT_VERITY)
 
 /*
  * Default values for user and/or group using reserved blocks
index b23ea76..f05003f 100644 (file)
@@ -1124,7 +1124,8 @@ static __u32 ok_features[3] = {
                EXT4_FEATURE_RO_COMPAT_BIGALLOC|
                EXT4_FEATURE_RO_COMPAT_QUOTA|
                EXT4_FEATURE_RO_COMPAT_METADATA_CSUM|
-               EXT4_FEATURE_RO_COMPAT_PROJECT
+               EXT4_FEATURE_RO_COMPAT_PROJECT|
+               EXT4_FEATURE_RO_COMPAT_VERITY
 };
 
 
index f1ddfe4..723f7ae 100644 (file)
@@ -170,7 +170,8 @@ static __u32 ok_features[3] = {
                EXT4_FEATURE_RO_COMPAT_QUOTA |
                EXT4_FEATURE_RO_COMPAT_METADATA_CSUM |
                EXT4_FEATURE_RO_COMPAT_READONLY |
-               EXT4_FEATURE_RO_COMPAT_PROJECT
+               EXT4_FEATURE_RO_COMPAT_PROJECT |
+               EXT4_FEATURE_RO_COMPAT_VERITY
 };
 
 static __u32 clear_ok_features[3] = {