Patch "erofs: apply proper VMA alignment for memory mapped files on THP" has been added to the 5.15-stable tree

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



This is a note to let you know that I've just added the patch titled

    erofs: apply proper VMA alignment for memory mapped files on THP

to the 5.15-stable tree which can be found at:
    http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=summary

The filename of the patch is:
     erofs-apply-proper-vma-alignment-for-memory-mapped-f.patch
and it can be found in the queue-5.15 subdirectory.

If you, or anyone else, feels it should not be added to the stable tree,
please let <stable@xxxxxxxxxxxxxxx> know about it.



commit 9deea584ddedefdec509c7736550783ec87c9920
Author: Gao Xiang <xiang@xxxxxxxxxx>
Date:   Wed Mar 6 13:31:38 2024 +0800

    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
       commit 74d2fad1334d ("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 commit 1854bc6e2420
       ("mm/readahead: Align file mappings for non-DAX").
    
    Fixes: 06252e9ce05b ("erofs: dax support for non-tailpacking regular file")
    Fixes: ce529cc25b18 ("erofs: enable large folios for iomap mode")
    Fixes: e6687b89225e ("erofs: enable large folios for fscache mode")
    Reviewed-by: Jingbo Xu <jefflexu@xxxxxxxxxxxxxxxxx>
    Reviewed-by: Chao Yu <chao@xxxxxxxxxx>
    Signed-off-by: Gao Xiang <hsiangkao@xxxxxxxxxxxxxxxxx>
    Link: https://lore.kernel.org/r/20240306053138.2240206-1-hsiangkao@xxxxxxxxxxxxxxxxx
    Signed-off-by: Sasha Levin <sashal@xxxxxxxxxx>

diff --git a/fs/erofs/data.c b/fs/erofs/data.c
index 16a41d0db55a3..a859bf0f31df2 100644
--- a/fs/erofs/data.c
+++ b/fs/erofs/data.c
@@ -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,
 };




[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux