From: Wang Shilong Date: Thu, 13 Jun 2019 07:29:53 +0000 (+0900) Subject: f2fs: only set project inherit bit for directory X-Git-Tag: v5.4-rc1~582^2~15 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=5043a9643fe65347badf33dca9e045d991e9c049;p=platform%2Fkernel%2Flinux-rpi.git f2fs: only set project inherit bit for directory It doesn't make any sense to have project inherit bits for regular files, even though this won't cause any problem, but it is better fix this. Cc: Andreas Dilger Signed-off-by: Wang Shilong Reviewed-by: Chao Yu Signed-off-by: Jaegeuk Kim --- diff --git a/fs/f2fs/f2fs.h b/fs/f2fs/f2fs.h index c072be6..9777e30 100644 --- a/fs/f2fs/f2fs.h +++ b/fs/f2fs/f2fs.h @@ -2350,7 +2350,7 @@ static inline void f2fs_change_bit(unsigned int nr, char *addr) F2FS_DIRSYNC_FL | F2FS_PROJINHERIT_FL) /* Flags that are appropriate for regular files (all but dir-specific ones). */ -#define F2FS_REG_FLMASK (~F2FS_DIRSYNC_FL) +#define F2FS_REG_FLMASK (~(F2FS_DIRSYNC_FL | F2FS_PROJINHERIT_FL)) /* Flags that are appropriate for non-directories/regular files. */ #define F2FS_OTHER_FLMASK (F2FS_NODUMP_FL | F2FS_NOATIME_FL) diff --git a/fs/f2fs/inode.c b/fs/f2fs/inode.c index ccb0222..8838e55 100644 --- a/fs/f2fs/inode.c +++ b/fs/f2fs/inode.c @@ -343,6 +343,8 @@ static int do_read_inode(struct inode *inode) le16_to_cpu(ri->i_gc_failures); fi->i_xattr_nid = le32_to_cpu(ri->i_xattr_nid); fi->i_flags = le32_to_cpu(ri->i_flags); + if (S_ISREG(inode->i_mode)) + fi->i_flags &= ~F2FS_PROJINHERIT_FL; fi->flags = 0; fi->i_advise = ri->i_advise; fi->i_pino = le32_to_cpu(ri->i_pino);