erofs: use feature_incompat rather than requirements
authorGao Xiang <gaoxiang25@huawei.com>
Wed, 4 Sep 2019 02:08:53 +0000 (10:08 +0800)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 5 Sep 2019 18:10:07 +0000 (20:10 +0200)
As Christoph said [1], "This is only cosmetic, why
not stick to feature_compat and feature_incompat?"

In my thought, requirements means "incompatible"
instead of "feature" though.

[1] https://lore.kernel.org/r/20190902125109.GA9826@infradead.org/
Reported-by: Christoph Hellwig <hch@infradead.org>
Signed-off-by: Gao Xiang <gaoxiang25@huawei.com>
Link: https://lore.kernel.org/r/20190904020912.63925-7-gaoxiang25@huawei.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
fs/erofs/decompressor.c
fs/erofs/erofs_fs.h
fs/erofs/internal.h
fs/erofs/super.c

index df349888f9114d03743f7d85c756a78cdcf6d9a5..555c04730f87a36f4bbdb7eb734258a573cc51f0 100644 (file)
@@ -129,7 +129,8 @@ static int lz4_decompress(struct z_erofs_decompress_req *rq, u8 *out)
        support_0padding = false;
 
        /* decompression inplace is only safe when 0padding is enabled */
-       if (EROFS_SB(rq->sb)->requirements & EROFS_REQUIREMENT_LZ4_0PADDING) {
+       if (EROFS_SB(rq->sb)->feature_incompat &
+           EROFS_FEATURE_INCOMPAT_LZ4_0PADDING) {
                support_0padding = true;
 
                while (!src[inputmargin & ~PAGE_MASK])
index 87d7ae82339a430f3d2bc109d71d0c3fbe54c0ee..b2aef3bc377de2727aeecab3760e474c87a163e2 100644 (file)
 #define EROFS_SUPER_OFFSET      1024
 
 /*
- * Any bits that aren't in EROFS_ALL_REQUIREMENTS should be
- * incompatible with this kernel version.
+ * Any bits that aren't in EROFS_ALL_FEATURE_INCOMPAT should
+ * be incompatible with this kernel version.
  */
-#define EROFS_REQUIREMENT_LZ4_0PADDING 0x00000001
-#define EROFS_ALL_REQUIREMENTS         EROFS_REQUIREMENT_LZ4_0PADDING
+#define EROFS_FEATURE_INCOMPAT_LZ4_0PADDING    0x00000001
+#define EROFS_ALL_FEATURE_INCOMPAT             EROFS_FEATURE_INCOMPAT_LZ4_0PADDING
 
 /* 128-byte erofs on-disk super block */
 struct erofs_super_block {
        __le32 magic;           /* file system magic number */
        __le32 checksum;        /* crc32c(super_block) */
-       __le32 features;        /* (aka. feature_compat) */
+       __le32 feature_compat;
        __u8 blkszbits;         /* support block_size == PAGE_SIZE only */
        __u8 reserved;
 
@@ -35,7 +35,7 @@ struct erofs_super_block {
        __le32 xattr_blkaddr;   /* start block address of shared xattr area */
        __u8 uuid[16];          /* 128-bit uuid for volume */
        __u8 volume_name[16];   /* volume name */
-       __le32 requirements;    /* (aka. feature_incompat) */
+       __le32 feature_incompat;
 
        __u8 reserved2[44];
 };
index 141ea424587d807ff66771fac61498de3e99aa26..7ff36f404ec3bbb466497d057765f6e22ffd6cc2 100644 (file)
@@ -96,7 +96,7 @@ struct erofs_sb_info {
 
        u8 uuid[16];                    /* 128-bit uuid for volume */
        u8 volume_name[16];             /* volume name */
-       u32 requirements;
+       u32 feature_incompat;
 
        unsigned int mount_opt;
 
index 6603f0ba8905271c809dad23e875ec20f962c401..6a7ab194783cf9b4f522195892b0fc80c13c0841 100644 (file)
@@ -67,14 +67,14 @@ static void free_inode(struct inode *inode)
 static bool check_layout_compatibility(struct super_block *sb,
                                       struct erofs_super_block *layout)
 {
-       const unsigned int requirements = le32_to_cpu(layout->requirements);
+       const unsigned int feature = le32_to_cpu(layout->feature_incompat);
 
-       EROFS_SB(sb)->requirements = requirements;
+       EROFS_SB(sb)->feature_incompat = feature;
 
        /* check if current kernel meets all mandatory requirements */
-       if (requirements & (~EROFS_ALL_REQUIREMENTS)) {
-               errln("unidentified requirements %x, please upgrade kernel version",
-                     requirements & ~EROFS_ALL_REQUIREMENTS);
+       if (feature & (~EROFS_ALL_FEATURE_INCOMPAT)) {
+               errln("unidentified incompatible feature %x, please upgrade kernel version",
+                     feature & ~EROFS_ALL_FEATURE_INCOMPAT);
                return false;
        }
        return true;