From: Toshi Kani <toshi.kani@xxxxxxx> Subject: ext2/4, xfs: call thp_get_unmapped_area() for pmd mappings To support DAX pmd mappings with unmodified applications, filesystems need to align an mmap address by the pmd size. Call thp_get_unmapped_area() from f_op->get_unmapped_area. Note, there is no change in behavior for a non-DAX file. Link: http://lkml.kernel.org/r/1472497881-9323-3-git-send-email-toshi.kani@xxxxxxx Signed-off-by: Toshi Kani <toshi.kani@xxxxxxx> Cc: Dan Williams <dan.j.williams@xxxxxxxxx> Cc: Matthew Wilcox <mawilcox@xxxxxxxxxxxxx> Cc: Ross Zwisler <ross.zwisler@xxxxxxxxxxxxxxx> Cc: Kirill A. Shutemov <kirill.shutemov@xxxxxxxxxxxxxxx> Cc: Dave Chinner <david@xxxxxxxxxxxxx> Cc: Jan Kara <jack@xxxxxxx> Cc: Theodore Ts'o <tytso@xxxxxxx> Cc: Andreas Dilger <adilger.kernel@xxxxxxxxx> Cc: Mike Kravetz <mike.kravetz@xxxxxxxxxx> Cc: "Kirill A. Shutemov" <kirill@xxxxxxxxxxxxx> Cc: Hugh Dickins <hughd@xxxxxxxxxx> Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx> --- fs/ext2/file.c | 1 + fs/ext4/file.c | 1 + fs/xfs/xfs_file.c | 1 + 3 files changed, 3 insertions(+) diff -puN fs/ext2/file.c~ext2-4-xfs-call-thp_get_unmapped_area-for-pmd-mappings fs/ext2/file.c --- a/fs/ext2/file.c~ext2-4-xfs-call-thp_get_unmapped_area-for-pmd-mappings +++ a/fs/ext2/file.c @@ -234,6 +234,7 @@ const struct file_operations ext2_file_o .open = dquot_file_open, .release = ext2_release_file, .fsync = ext2_fsync, + .get_unmapped_area = thp_get_unmapped_area, .splice_read = generic_file_splice_read, .splice_write = iter_file_splice_write, }; diff -puN fs/ext4/file.c~ext2-4-xfs-call-thp_get_unmapped_area-for-pmd-mappings fs/ext4/file.c --- a/fs/ext4/file.c~ext2-4-xfs-call-thp_get_unmapped_area-for-pmd-mappings +++ a/fs/ext4/file.c @@ -703,6 +703,7 @@ const struct file_operations ext4_file_o .open = ext4_file_open, .release = ext4_release_file, .fsync = ext4_sync_file, + .get_unmapped_area = thp_get_unmapped_area, .splice_read = generic_file_splice_read, .splice_write = iter_file_splice_write, .fallocate = ext4_fallocate, diff -puN fs/xfs/xfs_file.c~ext2-4-xfs-call-thp_get_unmapped_area-for-pmd-mappings fs/xfs/xfs_file.c --- a/fs/xfs/xfs_file.c~ext2-4-xfs-call-thp_get_unmapped_area-for-pmd-mappings +++ a/fs/xfs/xfs_file.c @@ -1618,6 +1618,7 @@ const struct file_operations xfs_file_op .open = xfs_file_open, .release = xfs_file_release, .fsync = xfs_file_fsync, + .get_unmapped_area = thp_get_unmapped_area, .fallocate = xfs_file_fallocate, }; _ -- To unsubscribe from this list: send the line "unsubscribe mm-commits" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html