From: Xin Yin Date: Tue, 11 Jul 2023 06:21:30 +0000 (+0800) Subject: erofs: fix fsdax unavailability for chunk-based regular files X-Git-Tag: v6.6.17~4381^2 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=18bddc5b67038722cb88fcf51fbf41a0277092cb;p=platform%2Fkernel%2Flinux-rpi.git erofs: fix fsdax unavailability for chunk-based regular files DAX can be used to share page cache between VMs, reducing guest memory overhead. And chunk based data format is widely used for VM and container image. So enable dax support for it, make erofs better used for VM scenarios. Fixes: c5aa903a59db ("erofs: support reading chunk-based uncompressed files") Signed-off-by: Xin Yin Reviewed-by: Gao Xiang Reviewed-by: Chao Yu Link: https://lore.kernel.org/r/20230711062130.7860-1-yinxin.x@bytedance.com Signed-off-by: Gao Xiang --- diff --git a/fs/erofs/inode.c b/fs/erofs/inode.c index d70b12b..e125927 100644 --- a/fs/erofs/inode.c +++ b/fs/erofs/inode.c @@ -183,7 +183,8 @@ static void *erofs_read_inode(struct erofs_buf *buf, inode->i_flags &= ~S_DAX; if (test_opt(&sbi->opt, DAX_ALWAYS) && S_ISREG(inode->i_mode) && - vi->datalayout == EROFS_INODE_FLAT_PLAIN) + (vi->datalayout == EROFS_INODE_FLAT_PLAIN || + vi->datalayout == EROFS_INODE_CHUNK_BASED)) inode->i_flags |= S_DAX; if (!nblks)