erofs: apply proper VMA alignment for memory mapped files on THP
[ Upstream commit 4127caee89612a84adedd78c9453089138cd5afe ] There are mainly two reasons that thp_get_unmapped_area() should be used for EROFS as other filesystems: - It's needed to enable PMD mappings as a FSDAX filesystem, see commit74d2fad133
("thp, dax: add thp_get_unmapped_area for pmd mappings"); - It's useful together with large folios and CONFIG_READ_ONLY_THP_FOR_FS which enable THPs for mmapped files (e.g. shared libraries) even without FSDAX. See commit1854bc6e24
("mm/readahead: Align file mappings for non-DAX"). Fixes:06252e9ce0
("erofs: dax support for non-tailpacking regular file") Fixes:ce529cc25b
("erofs: enable large folios for iomap mode") Fixes:e6687b8922
("erofs: enable large folios for fscache mode") Reviewed-by: Jingbo Xu <jefflexu@linux.alibaba.com> Reviewed-by: Chao Yu <chao@kernel.org> Signed-off-by: Gao Xiang <hsiangkao@linux.alibaba.com> Link: https://lore.kernel.org/r/20240306053138.2240206-1-hsiangkao@linux.alibaba.com Signed-off-by: Sasha Levin <sashal@kernel.org>
This commit is contained in:
Родитель
b3c0f55382
Коммит
101277e37d
|
@ -340,4 +340,5 @@ const struct file_operations erofs_file_fops = {
|
|||
.read_iter = erofs_file_read_iter,
|
||||
.mmap = erofs_file_mmap,
|
||||
.splice_read = generic_file_splice_read,
|
||||
.get_unmapped_area = thp_get_unmapped_area,
|
||||
};
|
||||
|
|
Загрузка…
Ссылка в новой задаче