This is an automated email from the git hooks/post-receive script.
unknown user pushed a change to branch master in repository linux.
from 3bf03b9a0839 Merge branch 'akpm' (patches from Andrew) new ebcbc6ea7d8a mm/munlock: delete page_mlock() and all its works new b67bf49ce7aa mm/munlock: delete FOLL_MLOCK and FOLL_POPULATE new a213e5cf71cb mm/munlock: delete munlock_vma_pages_all(), allow oomreap new cea86fe246b6 mm/munlock: rmap call mlock_vma_page() munlock_vma_page() new b109b87050df mm/munlock: replace clear_page_mlock() by final clearance new 07ca76067308 mm/munlock: maintain page->mlock_count while unevictable new 34b6792380ce mm/munlock: mlock_pte_range() when mlocking or munlocking new c3096e6782b7 mm/migrate: __unmap_and_move() push good newpage to LRU new 2262ace60713 mm/munlock: delete smp_mb() from __pagevec_lru_add_fn() new 2fbb0c10d1e8 mm/munlock: mlock_page() munlock_page() batch by pagevec new b74355078b65 mm/munlock: page migration needs mlock pagevec drained new 6d9df8a5889c mm/thp: collapse_file() do try_to_unmap(TTU_BATCH_FLUSH) new 47d4f3eeef5f mm/thp: shrink_page_list() avoid splitting VM_LOCKED THP new c8263bd60500 mm/munlock: mlock_vma_page() check against VM_SPECIAL new be8a80b3e20e mm: remove a pointless CONFIG_ZONE_DEVICE check in memremap_pages new 5c3f1f9cc4cb mm: remove the __KERNEL__ guard from <linux/mm.h> new 730ff52194cd mm: remove pointless includes from <linux/hmm.h> new 75e55d8a107e mm: move free_devmap_managed_page to memremap.c new 895749455f60 mm: simplify freeing of devmap managed pages new dc90f0846df4 mm: don't include <linux/memremap.h> in <linux/mm.h> new 27674ef6c73f mm: remove the extra ZONE_DEVICE struct page refcount new f74515986e63 fsdax: depend on ZONE_DEVICE || FS_DAX_LIMITED new 5cbf9942c963 mm: generalize the pgmap based page_free infrastructure new f9f38f78c5d5 mm: refactor check_and_migrate_movable_pages new 1776c0d10248 mm: refactor the ZONE_DEVICE handling in migrate_vma_insert_page new aaf7d70cc595 mm: refactor the ZONE_DEVICE handling in migrate_vma_pages new 76cbbead253d mm: move the migrate_vma_* device migration code into its [...] new d90a25f86dc8 mm: build migrate_vma_* for all configs with ZONE_DEVICE support new 8ea2979c1444 mm/gup: Increment the page refcount before the pincount new a5f100db6855 mm/gup: Remove for_each_compound_range() new e76027488640 mm/gup: Remove for_each_compound_head() new 8f39f5fcb796 mm/gup: Change the calling convention for compound_range_next() new 0b046e12ae5d mm/gup: Optimise compound_range_next() new 28297dbcad7e mm/gup: Change the calling convention for compound_next() new c228afb11ac6 mm/gup: Fix some contiguous memmap assumptions new 4c6542290115 mm/gup: Remove an assumption of a contiguous memmap new 59409373f60a mm/gup: Handle page split race more efficiently new 78d9d6ced31a mm/gup: Remove hpage_pincount_add() new 6315d8a23ce3 mm/gup: Remove hpage_pincount_sub() new 5232c63f46fd mm: Make compound_pincount always available new 3d11b225aeb1 mm: Add folio_pincount_ptr() new 0b90ddae1344 mm: Turn page_maybe_dma_pinned() into folio_maybe_dma_pinned() new ece1ed7bfa12 mm/gup: Add try_get_folio() and try_grab_folio() new 5fec0719908b mm/gup: Convert try_grab_page() to use a folio new 40fcc7fc2c38 mm: Remove page_cache_add_speculative() and page_cache_get [...] new d8ddc099c6b3 mm/gup: Add gup_put_folio() new 822951d84684 mm/hugetlb: Use try_grab_folio() instead of try_grab_compo [...] new b0496fe4effd mm/gup: Convert gup_pte_range() to use a folio new 09a1626effb8 mm/gup: Convert gup_hugepte() to use a folio new 667ed1f7bb3b mm/gup: Convert gup_huge_pmd() to use a folio new 83afb52e47d5 mm/gup: Convert gup_huge_pud() to use a folio new 2d7919a29275 mm/gup: Convert gup_huge_pgd() to use a folio new 12521c7606b2 mm/gup: Turn compound_next() into gup_folio_next() new 659508f9c936 mm/gup: Turn compound_range_next() into gup_folio_range_next() new d1d8a3b4d06d mm: Turn isolate_lru_page() into folio_isolate_lru() new 536939ff5163 mm: Add three folio wrappers new 1b7f7e58decc mm/gup: Convert check_and_migrate_movable_pages() to use a folio new 8927f6473e56 mm/workingset: Convert workingset_eviction() to take a folio new 3ecb0087ecee mm/memcg: Convert mem_cgroup_swapout() to take a folio new 06d20bdb9868 mm: Add lru_to_folio() new ca6d60f3f18b mm: Turn putback_lru_page() into folio_putback_lru() new be7c07d60e13 mm/vmscan: Convert __remove_mapping() to take a folio new b9ccad2e5d38 splice: Use a folio in page_cache_pipe_buf_try_steal() new 1b8ddbeeb9b8 mm/truncate: Inline invalidate_complete_page() into its on [...] new 4418481396b2 mm/truncate: Convert invalidate_inode_page() to use a folio new e41c81d0d30e mm/truncate: Replace page_mapped() call in invalidate_inod [...] new 5100da38ef3c mm: Convert remove_mapping() to take a folio new d6c75dc22c75 mm/truncate: Split invalidate_inode_page() into mapping_ev [...] new b4545f46533b mm/truncate: Convert __invalidate_mapping_pages() to use a folio new 261b6840ed10 mm: Turn deactivate_file_page() into deactivate_file_folio() new c56109dd35c9 mm/truncate: Combine invalidate_mapping_pagevec() and __in [...] new cbcc268bb1ce fs: Move many prototypes to pagemap.h new e20c41b1091a mm/vmscan: Turn page_check_dirty_writeback() into folio_ch [...] new 74e8ee4708a8 mm: Turn head_compound_mapcount() into folio_entire_mapcount() new 4ba1119cd531 mm: Add folio_mapcount() new 346cf61311f6 mm: Add split_folio_to_list() new f087b903fc2e mm: Add folio_pgoff() new eed05e54d275 mm: Add DEFINE_PAGE_VMA_WALK and DEFINE_FOLIO_VMA_WALK new 7106c51ee9a1 arch: Add pmd_pfn() where it is missing new 177bd2a9543f mips: Make pmd_pfn() available in all configurations new 9e996c2115e1 powerpc: Add pmd_pfn() new aef13dec0a5f sparc32: Add pmd_pfn() new 2aff7a4755be mm: Convert page_vma_mapped_walk to work on PFNs new 4aed23a2f8aa mm/page_idle: Convert page_idle_clear_pte_refs() to use a folio new e83c09a24e3d mm/rmap: Use a folio in page_mkclean_one() new dcc5d337c5e6 mm/mlock: Add mlock_vma_folio() new b3ac04132c4b mm/rmap: Turn page_referenced() into folio_referenced() new af28a988b313 mm/huge_memory: Convert __split_huge_pmd() to take a folio new 869f7ee6f647 mm/rmap: Convert try_to_unmap() to take a folio new 4b8554c527f3 mm/rmap: Convert try_to_migrate() to folios new 0d2514859ced mm/rmap: Convert make_device_exclusive_range() to use folios new 4eecb8b9163d mm/migrate: Convert remove_migration_ptes() to folios new 6d42dba3ccf3 mm/damon: Convert damon_pa_mkold() to use a folio new c84231860783 mm/damon: Convert damon_pa_young() to use a folio new 9595d76942b8 mm/rmap: Turn page_lock_anon_vma_read() into folio_lock_an [...] new e05b34539d00 mm: Turn page_anon_vma() into folio_anon_vma() new 2f031c6f042c mm/rmap: Convert rmap_walk() to take a folio new 84fbbe21894b mm/rmap: Constify the rmap_walk_control argument new 820c4e2e6f51 mm/vmscan: Free non-shmem folios without splitting them new 343b288834e8 mm/vmscan: Optimise shrink_page_list for non-PMD-sized folios new c79b7b96db8b mm/vmscan: Account large folios correctly new d92013d1e5e4 mm/vmscan: Turn page_check_references() into folio_check_r [...] new e0cd5e7ffa54 mm/vmscan: Convert pageout() to take a folio new d4b4084ac315 mm: Turn can_split_huge_page() into can_split_folio() new d68eccad3706 mm/filemap: Allow large folios to be added to the page cache new 06d44142d49d mm: Fix READ_ONLY_THP warning new 421f1ab48452 mm: Make large folios depend on THP new 18788cfa2369 mm: Support arbitrary THP sizes new 793917d997df mm/readahead: Add large folio readahead new 1854bc6e2420 mm/readahead: Align file mappings for non-DAX new 56a4d67c264e mm/readahead: Switch to page_cache_ra_order new 4687fdbb805a mm/filemap: Support VM_HUGEPAGE for file mappings new 72e725887413 selftests/vm/transhuge-stress: Support file-backed PMD folios new 2a3c4bce3edb mm/damon: minor cleanup for damon_pa_young new 9030fb0bb9d6 Merge tag 'folio-5.18c' of git://git.infradead.org/users/w [...] new 1241ebeca3f9 iomap: Fix iomap_invalidatepage tracepoint new c14c6843aeb8 fs: read_mapping_page() should take a struct file argument new 4495a96c4cd4 fs/remap_range: Pass the file pointer to read_mapping_folio() new cd1067beeebf buffer: Add folio_buffers() new 2e7e80f7e7e9 fs: Convert is_partially_uptodate to folios new 5ad6b2bdaaea fs: Turn do_invalidatepage() into folio_invalidate() new 8e1dec8eb8b0 btrfs: Use folio_invalidate() new a628304ebe6a ceph: Use folio_invalidate() new 020df9baeac5 ext4: Use folio_invalidate() new 128d1f8241d6 fs: Add invalidate_folio() aops method new d82354f6b05f iomap: Remove iomap_invalidatepage() new 7ba13abbd31e fs: Turn block_invalidatepage into block_invalidate_folio new 5660a8630dab fs: Remove noop_invalidatepage() new 040cdd4bf90e 9p: Convert to invalidate_folio new f6bc6fb88c16 afs: Convert directory aops to invalidate_folio new fcf227daed82 afs: Convert invalidatepage to invalidate_folio new 895586eb6898 btrfs: Convert from invalidatepage to invalidate_folio new 9872f4de1442 ceph: Convert from invalidatepage to invalidate_folio new 0eaf605247bb cifs: Convert from invalidatepage to invalidate_folio new 39653e69092f erofs: Convert from invalidatepage to invalidate_folio new ccd16945dba0 ext4: Convert invalidatepage to invalidate_folio new 915039967342 f2fs: Convert invalidatepage to invalidate_folio new 5f4b297684a7 gfs2: Convert invalidatepage to invalidate_folio new c5b56b50d729 jfs: Convert from invalidatepage to invalidate_folio new 6d740c76ea86 nfs: Convert from invalidatepage to invalidate_folio new 2a40be81250c orangefs: Convert from invalidatepage to invalidate_folio new d97dfc948428 reiserfs: Convert from invalidatepage to invalidate_folio new 58a2fdb61bbb ubifs: Convert from invalidatepage to invalidate_folio new f50015a596fa fs: Remove aops->invalidatepage new affa80e8c6a1 fs: Add aops->launder_folio new 76dba927201d 9p: Convert from launder_page to launder_folio new a42442dd7369 afs: Convert from launder_page to launder_folio new ff2b48b96599 cifs: Convert from launder_page to launder_folio new 2bf06b8e6428 fuse: Convert from launder_page to launder_folio new 15a30ab2b35b nfs: Convert from launder_page to launder_folio new eabf038f4e36 orangefs: Convert launder_page to launder_folio new 072acba6d087 fs: Remove aops->launder_page new 6f31a5a261db fs: Add aops->dirty_folio new 8fb72b4a7693 fscache: Convert fscache_set_page_dirty() to fscache_dirty [...] new 0079c3b17631 btrfs: Convert from set_page_dirty to dirty_folio new 187c82cb0380 fs: Convert trivial uses of __set_page_dirty_nobuffers to [...] new ebf55c886eb7 btrfs: Convert extent_range_redirty_for_io() to use folios new d7c994b34c80 afs: Convert afs_dir_set_page_dirty() to afs_dir_dirty_folio() new 1d9ac659ff78 f2fs: Convert f2fs_set_meta_page_dirty to f2fs_dirty_meta_folio new 4f5e34f71318 f2fs: Convert f2fs_set_data_page_dirty to f2fs_dirty_data_folio new cbc975b182a0 f2fs: Convert f2fs_set_node_page_dirty to f2fs_dirty_node_folio new 1f1d14dbc39a ubifs: Convert ubifs_set_page_dirty to ubifs_dirty_folio new 7e63df00cf5e mm: Convert swap_set_page_dirty() to swap_dirty_folio() new af7afdc7bbbe nilfs: Convert nilfs_set_page_dirty() to nilfs_dirty_folio() new e621900ad28b fs: Convert __set_page_dirty_buffers to block_dirty_folio new 46de8b979492 fs: Convert __set_page_dirty_no_writeback to noop_dirty_folio new 51cdea7ac94d fb_defio: Use noop_dirty_folio() new 3a3bae50af5d fs: Remove aops ->set_page_dirty new 6b1f86f8e9c7 Merge tag 'folio-5.18b' of git://git.infradead.org/users/w [...]
The 169 revisions listed above as "new" are entirely new to this repository and will be described in separate emails. The revisions listed as "adds" were already present in the repository and have only been added to this reference.
Summary of changes: Documentation/core-api/pin_user_pages.rst | 18 +- Documentation/filesystems/caching/netfs-api.rst | 7 +- Documentation/filesystems/locking.rst | 42 +- Documentation/filesystems/vfs.rst | 46 +- arch/alpha/include/asm/pgtable.h | 1 + arch/arc/include/asm/hugepage.h | 1 - arch/arc/include/asm/pgtable-levels.h | 1 + arch/arm/include/asm/pgtable-2level.h | 2 + arch/arm64/mm/mmu.c | 1 + arch/csky/include/asm/pgtable.h | 1 + arch/hexagon/include/asm/pgtable.h | 5 + arch/ia64/include/asm/pgtable.h | 1 + arch/m68k/include/asm/mcf_pgtable.h | 1 + arch/m68k/include/asm/motorola_pgtable.h | 1 + arch/m68k/include/asm/sun3_pgtable.h | 1 + arch/microblaze/include/asm/pgtable.h | 3 + arch/mips/include/asm/pgtable.h | 10 +- arch/nds32/include/asm/pgtable.h | 1 + arch/nios2/include/asm/pgtable.h | 1 + arch/openrisc/include/asm/pgtable.h | 1 + arch/parisc/include/asm/pgtable.h | 1 + arch/powerpc/include/asm/book3s/32/pgtable.h | 4 +- arch/powerpc/include/asm/mmu_context.h | 1 - arch/powerpc/include/asm/nohash/32/pgtable.h | 7 +- arch/powerpc/include/asm/nohash/64/pgtable.h | 1 + arch/powerpc/kvm/book3s_hv_uvmem.c | 2 +- arch/powerpc/mm/book3s64/pgtable.c | 1 + arch/sh/include/asm/pgtable_32.h | 1 + arch/sparc/include/asm/pgtable_32.h | 7 +- arch/um/include/asm/pgtable.h | 1 + arch/xtensa/include/asm/pgtable.h | 1 + block/fops.c | 3 +- drivers/block/xen-blkback/xenbus.c | 1 + drivers/dax/device.c | 3 +- drivers/gpu/drm/amd/amdkfd/kfd_migrate.c | 2 +- drivers/gpu/drm/amd/amdkfd/kfd_priv.h | 1 + drivers/gpu/drm/drm_cache.c | 2 +- drivers/gpu/drm/nouveau/nouveau_dmem.c | 3 +- drivers/gpu/drm/nouveau/nouveau_svm.c | 1 + drivers/infiniband/core/rw.c | 1 + drivers/nvdimm/pmem.h | 1 + drivers/nvme/host/pci.c | 1 + drivers/nvme/target/io-cmd-bdev.c | 1 + drivers/usb/gadget/function/f_mass_storage.c | 1 + drivers/video/fbdev/core/fb_defio.c | 9 +- fs/9p/vfs_addr.c | 37 +- fs/Kconfig | 2 +- fs/adfs/inode.c | 3 +- fs/affs/file.c | 6 +- fs/afs/dir.c | 18 +- fs/afs/file.c | 28 +- fs/afs/internal.h | 6 +- fs/afs/write.c | 10 +- fs/aio.c | 2 +- fs/bfs/file.c | 3 +- fs/btrfs/ctree.h | 3 + fs/btrfs/disk-io.c | 47 +- fs/btrfs/extent-io-tree.h | 4 +- fs/btrfs/extent_io.c | 35 +- fs/btrfs/inode.c | 84 ++- fs/buffer.c | 96 ++- fs/ceph/addr.c | 83 +-- fs/ceph/cache.h | 13 +- fs/cifs/file.c | 39 +- fs/coda/file.c | 1 + fs/ecryptfs/mmap.c | 5 +- fs/erofs/super.c | 17 +- fs/exfat/inode.c | 3 +- fs/ext2/inode.c | 9 +- fs/ext4/inode.c | 129 ++-- fs/f2fs/checkpoint.c | 31 +- fs/f2fs/compress.c | 2 +- fs/f2fs/data.c | 56 +- fs/f2fs/f2fs.h | 5 +- fs/f2fs/node.c | 29 +- fs/fat/inode.c | 3 +- fs/fscache/io.c | 28 +- fs/fuse/dax.c | 3 +- fs/fuse/dir.c | 2 +- fs/fuse/file.c | 16 +- fs/fuse/virtio_fs.c | 1 + fs/gfs2/aops.c | 43 +- fs/gfs2/meta_io.c | 6 +- fs/hfs/inode.c | 6 +- fs/hfsplus/inode.c | 6 +- fs/hostfs/hostfs_kern.c | 3 +- fs/hpfs/file.c | 3 +- fs/hugetlbfs/inode.c | 2 +- fs/iomap/buffered-io.c | 46 +- fs/iomap/fiemap.c | 1 + fs/iomap/trace.h | 2 +- fs/jbd2/journal.c | 2 +- fs/jbd2/transaction.c | 31 +- fs/jfs/inode.c | 3 +- fs/jfs/jfs_metapage.c | 14 +- fs/libfs.c | 15 +- fs/minix/inode.c | 3 +- fs/mpage.c | 2 +- fs/nfs/file.c | 32 +- fs/nfs/write.c | 8 +- fs/nfsd/filecache.c | 1 + fs/nfsd/vfs.c | 1 + fs/nilfs2/inode.c | 40 +- fs/nilfs2/mdt.c | 3 +- fs/ntfs/aops.c | 21 +- fs/ntfs3/inode.c | 2 +- fs/ocfs2/aops.c | 4 +- fs/omfs/file.c | 3 +- fs/orangefs/inode.c | 121 ++-- fs/proc/page.c | 1 + fs/reiserfs/inode.c | 40 +- fs/reiserfs/journal.c | 4 +- fs/remap_range.c | 16 +- fs/splice.c | 24 +- fs/sysv/itree.c | 3 +- fs/ubifs/file.c | 34 +- fs/udf/file.c | 3 +- fs/udf/inode.c | 3 +- fs/ufs/inode.c | 3 +- fs/vboxsf/file.c | 2 +- fs/vboxsf/utils.c | 1 + fs/xfs/xfs_aops.c | 7 +- fs/zonefs/super.c | 4 +- include/linux/buffer_head.h | 9 +- include/linux/fs.h | 134 +--- include/linux/fscache.h | 8 +- include/linux/hmm.h | 9 +- include/linux/huge_mm.h | 59 +- include/linux/hugetlb.h | 5 + include/linux/iomap.h | 5 +- include/linux/jbd2.h | 4 +- include/linux/ksm.h | 6 +- include/linux/memremap.h | 27 +- include/linux/mm.h | 299 ++++---- include/linux/mm_inline.h | 11 +- include/linux/mm_types.h | 26 +- include/linux/nfs_fs.h | 2 +- include/linux/pagemap.h | 175 ++++- include/linux/rmap.h | 76 ++- include/linux/swap.h | 11 +- include/trace/events/ext4.h | 30 +- include/trace/events/vmscan.h | 10 +- kernel/events/uprobes.c | 13 +- kernel/futex/core.c | 2 +- lib/test_hmm.c | 4 +- mm/Kconfig | 7 +- mm/Makefile | 1 + mm/damon/paddr.c | 62 +- mm/debug.c | 18 +- mm/filemap.c | 67 +- mm/folio-compat.c | 13 + mm/gup.c | 486 ++++++------- mm/huge_memory.c | 178 ++--- mm/hugetlb.c | 15 +- mm/internal.h | 117 ++-- mm/khugepaged.c | 15 +- mm/ksm.c | 32 +- mm/madvise.c | 5 + mm/memcontrol.c | 37 +- mm/memory-failure.c | 12 +- mm/memory.c | 43 +- mm/memory_hotplug.c | 13 +- mm/memremap.c | 65 +- mm/migrate.c | 870 ++---------------------- mm/migrate_device.c | 773 +++++++++++++++++++++ mm/mlock.c | 638 ++++++++--------- mm/mmap.c | 32 +- mm/mmzone.c | 7 + mm/oom_kill.c | 2 +- mm/page-writeback.c | 36 +- mm/page_alloc.c | 3 +- mm/page_idle.c | 30 +- mm/page_io.c | 15 +- mm/page_vma_mapped.c | 58 +- mm/readahead.c | 110 ++- mm/rmap.c | 582 +++++++--------- mm/secretmem.c | 2 +- mm/shmem.c | 2 +- mm/swap.c | 173 ++--- mm/swap_state.c | 2 +- mm/truncate.c | 153 ++--- mm/userfaultfd.c | 14 +- mm/util.c | 36 +- mm/vmscan.c | 305 +++++---- mm/workingset.c | 25 +- tools/testing/selftests/vm/transhuge-stress.c | 35 +- 186 files changed, 3749 insertions(+), 3895 deletions(-) create mode 100644 mm/migrate_device.c