lkml.org 
[lkml]   [2020]   [Oct]   [27]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH 5.8 459/633] ext4: disallow modifying DAX inode flag if inline_data has been set
    Date
    From: Xiao Yang <yangx.jy@cn.fujitsu.com>

    [ Upstream commit aa2f77920b743c44e02e2dc8474bbf8bd30007a2 ]

    inline_data is mutually exclusive to DAX so enabling both of them triggers
    the following issue:
    ------------------------------------------
    # mkfs.ext4 -F -O inline_data /dev/pmem1
    ...
    # mount /dev/pmem1 /mnt
    # echo 'test' >/mnt/file
    # lsattr -l /mnt/file
    /mnt/file Inline_Data
    # xfs_io -c "chattr +x" /mnt/file
    # xfs_io -c "lsattr -v" /mnt/file
    [dax] /mnt/file
    # umount /mnt
    # mount /dev/pmem1 /mnt
    # cat /mnt/file
    cat: /mnt/file: Numerical result out of range
    ------------------------------------------

    Fixes: b383a73f2b83 ("fs/ext4: Introduce DAX inode flag")
    Signed-off-by: Xiao Yang <yangx.jy@cn.fujitsu.com>
    Reviewed-by: Jan Kara <jack@suse.cz>
    Reviewed-by: Ira Weiny <ira.weiny@intel.com>
    Reviewed-by: Andreas Dilger <adilger@dilger.ca>
    Link: https://lore.kernel.org/r/20200828084330.15776-1-yangx.jy@cn.fujitsu.com
    Signed-off-by: Theodore Ts'o <tytso@mit.edu>
    Signed-off-by: Sasha Levin <sashal@kernel.org>
    ---
    fs/ext4/ext4.h | 2 +-
    1 file changed, 1 insertion(+), 1 deletion(-)

    diff --git a/fs/ext4/ext4.h b/fs/ext4/ext4.h
    index ff46defc65683..dc943e714d142 100644
    --- a/fs/ext4/ext4.h
    +++ b/fs/ext4/ext4.h
    @@ -466,7 +466,7 @@ struct flex_groups {

    /* Flags which are mutually exclusive to DAX */
    #define EXT4_DAX_MUT_EXCL (EXT4_VERITY_FL | EXT4_ENCRYPT_FL |\
    - EXT4_JOURNAL_DATA_FL)
    + EXT4_JOURNAL_DATA_FL | EXT4_INLINE_DATA_FL)

    /* Mask out flags that are inappropriate for the given type of inode. */
    static inline __u32 ext4_mask_flags(umode_t mode, __u32 flags)
    --
    2.25.1


    \
     
     \ /
      Last update: 2020-10-27 18:00    [W:3.964 / U:1.084 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site