[RFC 00/15] Large pages in the page-cache

From: Matthew Wilcox
Date: Tue Sep 24 2019 - 20:53:29 EST


From: "Matthew Wilcox (Oracle)" <willy@xxxxxxxxxxxxx>

Here's what I'm currently playing with. I'm having trouble _testing_
it, but since akpm's patches were just merged into Linus' tree, I
thought this would be a good point to send out my current work tree.
Thanks to kbuild bot for finding a bunch of build problems ;-)

Matthew Wilcox (Oracle) (12):
mm: Use vm_fault error code directly
fs: Introduce i_blocks_per_page
mm: Add file_offset_of_ helpers
iomap: Support large pages
xfs: Support large pages
xfs: Pass a page to xfs_finish_page_writeback
mm: Make prep_transhuge_page tail-callable
mm: Add __page_cache_alloc_order
mm: Allow large pages to be added to the page cache
mm: Allow find_get_page to be used for large pages
mm: Remove hpage_nr_pages
xfs: Use filemap_huge_fault

William Kucharski (3):
mm: Support removing arbitrary sized pages from mapping
mm: Add a huge page fault handler for files
mm: Align THP mappings for non-DAX

drivers/net/ethernet/ibm/ibmveth.c | 2 -
drivers/nvdimm/btt.c | 4 +-
drivers/nvdimm/pmem.c | 3 +-
fs/iomap/buffered-io.c | 121 +++++++----
fs/jfs/jfs_metapage.c | 2 +-
fs/xfs/xfs_aops.c | 37 ++--
fs/xfs/xfs_file.c | 5 +-
include/linux/huge_mm.h | 15 +-
include/linux/iomap.h | 2 +-
include/linux/mm.h | 12 ++
include/linux/mm_inline.h | 6 +-
include/linux/pagemap.h | 73 ++++++-
mm/filemap.c | 311 ++++++++++++++++++++++++++---
mm/gup.c | 2 +-
mm/huge_memory.c | 11 +-
mm/internal.h | 4 +-
mm/memcontrol.c | 14 +-
mm/memory_hotplug.c | 4 +-
mm/mempolicy.c | 2 +-
mm/migrate.c | 19 +-
mm/mlock.c | 9 +-
mm/page_io.c | 4 +-
mm/page_vma_mapped.c | 6 +-
mm/rmap.c | 8 +-
mm/swap.c | 4 +-
mm/swap_state.c | 4 +-
mm/swapfile.c | 2 +-
mm/vmscan.c | 9 +-
28 files changed, 519 insertions(+), 176 deletions(-)

--
2.23.0