[GIT PULL] MM updates for 6.3-rc1

From: Andrew Morton
Date: Mon Feb 20 2023 - 16:52:38 EST



Linus, please merge this cycle's MM updates.

I'm presently seeing one merge conflict in fs/buffer.c. Stephen's
resolution is described at
https://lkml.kernel.org/r/20230110132519.72181341@xxxxxxxxxxxxxxxx.

There are a lot of conflicts in your future, mainly because of the
ongoing folio conversion work. This will hopefully come to an end
fairly soon. Forthcoming conflicts which are known about, along with
Stephen's fixes are:

Documentation/admin-guide/cgroup-v1/memory.rst
https://lkml.kernel.org/r/20230106125915.60c8b547@xxxxxxxxxxxxxxxx

drivers/infiniband/hw/hfi1/file_ops.c
https://lkml.kernel.org/r/20230127162143.1a3bc64b@xxxxxxxxxxxxxxxx

drivers/gpu/drm/i810/i810_dma.c
https://lkml.kernel.org/r/20230127162426.19daa5b1@xxxxxxxxxxxxxxxx

drivers/staging/media/deprecated/meye/meye.c
https://lkml.kernel.org/r/20230127162647.037701db@xxxxxxxxxxxxxxxx

drivers/staging/media/deprecated/stkwebcam/stk-webcam.c
https://lkml.kernel.org/r/20230127162906.77e540fa@xxxxxxxxxxxxxxxx

Documentation/admin-guide/mm/numaperf.rst
https://lkml.kernel.org/r/20230209131258.1d7a28fb@xxxxxxxxxxxxxxxx

Documentation/translations/zh_CN/accounting/delay-accounting.rst
https://lkml.kernel.org/r/20230214133929.7d8ed00f@xxxxxxxxxxxxxxxx

include/linux/memcontrol.h
mm/memcontrol.c
https://lkml.kernel.org/r/20230215135734.4dffcd39@xxxxxxxxxxxxxxxx

fs/nfs/write.c
https://lkml.kernel.org/r/20230216140514.631bcca1@xxxxxxxxxxxxxxxx

fs/cifs/file.c
https://lkml.kernel.org/r/20230220152933.1ab8fa4a@xxxxxxxxxxxxxxxx

fs/ext4/inode.c
https://lkml.kernel.org/r/20230220152938.45f62d5a@xxxxxxxxxxxxxxxx


Thanks.


The following changes since commit 1301f9313484f9eeb09904988b2aabd398492797:

Pull mm-hotfixes-stable dependencies into mm-stable. (2023-01-18 17:03:20 -0800)

are available in the Git repository at:

git://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm tags/mm-stable-2023-02-20-13-37

for you to fetch changes up to f9366f4c2a29d14f5992b195e268240c2deb116e:

include/linux/migrate.h: remove unneeded externs (2023-02-20 12:46:18 -0800)

----------------------------------------------------------------
- Daniel Verkamp has contributed a memfd series ("mm/memfd: add
F_SEAL_EXEC") which permits the setting of the memfd execute bit at
memfd creation time, with the option of sealing the state of the X bit.

- Peter Xu adds a patch series ("mm/hugetlb: Make huge_pte_offset()
thread-safe for pmd unshare") which addresses a rare race condition
related to PMD unsharing.

- Several folioification patch serieses from Matthew Wilcox, Vishal
Moola, Sidhartha Kumar and Lorenzo Stoakes

- Johannes Weiner has a series ("mm: push down lock_page_memcg()") which
does perform some memcg maintenance and cleanup work.

- SeongJae Park has added DAMOS filtering to DAMON, with the series
"mm/damon/core: implement damos filter". These filters provide users
with finer-grained control over DAMOS's actions. SeongJae has also done
some DAMON cleanup work.

- Kairui Song adds a series ("Clean up and fixes for swap").

- Vernon Yang contributed the series "Clean up and refinement for maple
tree".

- Yu Zhao has contributed the "mm: multi-gen LRU: memcg LRU" series. It
adds to MGLRU an LRU of memcgs, to improve the scalability of global
reclaim.

- David Hildenbrand has added some userfaultfd cleanup work in the
series "mm: uffd-wp + change_protection() cleanups".

- Christoph Hellwig has removed the generic_writepages() library
function in the series "remove generic_writepages".

- Baolin Wang has performed some maintenance on the compaction code in
his series "Some small improvements for compaction".

- Sidhartha Kumar is doing some maintenance work on struct page in his
series "Get rid of tail page fields".

- David Hildenbrand contributed some cleanup, bugfixing and
generalization of pte management and of pte debugging in his series "mm:
support __HAVE_ARCH_PTE_SWP_EXCLUSIVE on all architectures with swap
PTEs".

- Mel Gorman and Neil Brown have removed the __GFP_ATOMIC allocation
flag in the series "Discard __GFP_ATOMIC".

- Sergey Senozhatsky has improved zsmalloc's memory utilization with his
series "zsmalloc: make zspage chain size configurable".

- Joey Gouly has added prctl() support for prohibiting the creation of
writeable+executable mappings. The previous BPF-based approach had
shortcomings. See "mm: In-kernel support for memory-deny-write-execute
(MDWE)".

- Waiman Long did some kmemleak cleanup and bugfixing in the series
"mm/kmemleak: Simplify kmemleak_cond_resched() & fix UAF".

- T.J. Alumbaugh has contributed some MGLRU cleanup work in his series
"mm: multi-gen LRU: improve".

- Jiaqi Yan has provided some enhancements to our memory error
statistics reporting, mainly by presenting the statistics on a per-node
basis. See the series "Introduce per NUMA node memory error
statistics".

- Mel Gorman has a second and hopefully final shot at fixing a CPU-hog
regression in compaction via his series "Fix excessive CPU usage during
compaction".

- Christoph Hellwig does some vmalloc maintenance work in the series
"cleanup vfree and vunmap".

- Christoph Hellwig has removed block_device_operations.rw_page() in ths
series "remove ->rw_page".

- We get some maple_tree improvements and cleanups in Liam Howlett's
series "VMA tree type safety and remove __vma_adjust()".

- Suren Baghdasaryan has done some work on the maintainability of our
vm_flags handling in the series "introduce vm_flags modifier functions".

- Some pagemap cleanup and generalization work in Mike Rapoport's series
"mm, arch: add generic implementation of pfn_valid() for FLATMEM" and
"fixups for generic implementation of pfn_valid()"

- Baoquan He has done some work to make /proc/vmallocinfo and
/proc/kcore better represent the real state of things in his series
"mm/vmalloc.c: allow vread() to read out vm_map_ram areas".

- Jason Gunthorpe rationalized the GUP system's interface to the rest of
the kernel in the series "Simplify the external interface for GUP".

- SeongJae Park wishes to migrate people from DAMON's debugfs interface
over to its sysfs interface. To support this, we'll temporarily be
printing warnings when people use the debugfs interface. See the series
"mm/damon: deprecate DAMON debugfs interface".

- Andrey Konovalov provided the accurately named "lib/stackdepot: fixes
and clean-ups" series.

- Huang Ying has provided a dramatic reduction in migration's TLB flush
IPI rates with the series "migrate_pages(): batch TLB flushing".

- Arnd Bergmann has some objtool fixups in "objtool warning fixes".

----------------------------------------------------------------
Alexander Mikhalitsyn (1):
mailmap: add entry for Alexander Mikhalitsyn

Alexander Pantyukhin (1):
tools:cgroup:memcg_shrinker remove redundant import

Alexander Potapenko (2):
Revert "x86: kmsan: sync metadata pages on page fault"
kmsan: silence -Wmissing-prototypes warnings

Alistair Popple (1):
mm/mmu_notifier: remove unused mmu_notifier_range_update_to_read_only export

Andrew Morton (4):
Sync mm-stable with mm-hotfixes-stable to pick up dependent patches
revert "squashfs: harden sanity check in squashfs_read_xattr_id_table"
Merge branch 'mm-hotfixes-stable' into mm-stable
include/linux/migrate.h: remove unneeded externs

Andrey Konovalov (20):
kasan: allow sampling page_alloc allocations for HW_TAGS
kasan: reset page tags properly with sampling
lib/stackdepot: put functions in logical order
lib/stackdepot: use pr_fmt to define message format
lib/stackdepot, mm: rename stack_depot_want_early_init
lib/stackdepot: rename stack_depot_disable
lib/stackdepot: annotate init and early init functions
lib/stackdepot: lower the indentation in stack_depot_init
lib/stackdepot: reorder and annotate global variables
lib/stackdepot: rename hash table constants and variables
lib/stackdepot: rename slab to pool
lib/stackdepot: rename handle and pool constants
lib/stackdepot: rename init_stack_pool
lib/stacktrace: drop impossible WARN_ON for depot_init_pool
lib/stackdepot: annotate depot_init_pool and depot_alloc_stack
lib/stackdepot: rename next_pool_inited to next_pool_required
lib/stacktrace, kasan, kmsan: rework extra_bits interface
lib/stackdepot: annotate racy pool_index accesses
lib/stackdepot: various comments clean-ups
lib/stackdepot: move documentation comments to stackdepot.h

Anshuman Khandual (1):
mm/page_alloc: use deferred_pages_enabled() wherever applicable

Arnd Bergmann (5):
mm: extend max struct page size for kmsan
maple_tree: reduce stack usage with gcc-9 and earlier
kasan: mark addr_has_metadata __always_inline
kmsan: disable ftrace in kmsan core code
objtool: add UACCESS exceptions for __tsan_volatile_read/write

Baolin Wang (9):
mm: compaction: remove redundant VM_BUG_ON() in compact_zone()
mm: compaction: move list validation into compact_zone()
mm: compaction: count the migration scanned pages events for proactive compaction
mm: compaction: add missing kcompactd wakeup trace event
mm: compaction: avoid fragmentation score calculation for empty zones
mm: change to return bool for folio_isolate_lru()
mm: change to return bool for isolate_lru_page()
mm: hugetlb: change to return bool for isolate_hugetlb()
mm: change to return bool for isolate_movable_page()

Baoquan He (7):
mm/vmalloc.c: add used_map into vmap_block to track space of vmap_block
mm/vmalloc.c: add flags to mark vm_map_ram area
mm/vmalloc.c: allow vread() to read out vm_map_ram areas
mm/vmalloc: explicitly identify vm_map_ram area when shown in /proc/vmcoreinfo
mm/vmalloc: skip the uninitilized vmalloc areas
powerpc: mm: add VM_IOREMAP flag to the vmalloc area
sh: mm: set VM_IOREMAP flag to the vmalloc area

Björn Töpel (1):
selftests: vm: enable cross-compilation

Christoph Hellwig (23):
fs: remove an outdated comment on mpage_writepages
ntfs3: stop using generic_writepages
ntfs3: remove ->writepage
jbd2,ocfs2: move jbd2_journal_submit_inode_data_buffers to ocfs2
ocfs2: use filemap_fdatawrite_wbc instead of generic_writepages
mm: remove generic_writepages
mm: reject vmap with VM_FLUSH_RESET_PERMS
mm: remove __vfree
mm: remove __vfree_deferred
mm: move vmalloc_init and free_work down in vmalloc.c
mm: call vfree instead of __vunmap from delayed_vfree_work
mm: move __remove_vm_area out of va_remove_mappings
mm: use remove_vm_area in __vunmap
mm: move debug checks from __vunmap to remove_vm_area
mm: split __vunmap
mm: refactor va_remove_mappings
mpage: stop using bdev_{read,write}_page
mm: remove the swap_readpage return value
mm: factor out a swap_readpage_bdev helper
mm: use an on-stack bio for synchronous swapin
mm: remove the __swap_writepage return value
mm: factor out a swap_writepage_bdev helper
block: remove ->rw_page

Christophe Leroy (1):
kasan: fix Oops due to missing calls to kasan_arch_is_ready()

Colin Ian King (1):
mm/secretmem: remove redundant initiialization of pointer file

Daniel Verkamp (2):
mm/memfd: add F_SEAL_EXEC
selftests/memfd: add tests for F_SEAL_EXEC

David Hildenbrand (34):
mm/userfaultfd: rely on vma->vm_page_prot in uffd_wp_range()
mm/mprotect: drop pgprot_t parameter from change_protection()
selftests/vm: cow: add COW tests for collapsing of PTE-mapped anon THP
mm/nommu: factor out check for NOMMU shared mappings into is_nommu_shared_mapping()
mm/nommu: don't use VM_MAYSHARE for MAP_PRIVATE mappings
drivers/misc/open-dice: don't touch VM_MAYSHARE
selftests/mm: define MADV_PAGEOUT to fix compilation issues
mm/debug_vm_pgtable: more pte_swp_exclusive() sanity checks
alpha/mm: support __HAVE_ARCH_PTE_SWP_EXCLUSIVE
arc/mm: support __HAVE_ARCH_PTE_SWP_EXCLUSIVE
arm/mm: support __HAVE_ARCH_PTE_SWP_EXCLUSIVE
csky/mm: support __HAVE_ARCH_PTE_SWP_EXCLUSIVE
hexagon/mm: support __HAVE_ARCH_PTE_SWP_EXCLUSIVE
ia64/mm: support __HAVE_ARCH_PTE_SWP_EXCLUSIVE
loongarch/mm: support __HAVE_ARCH_PTE_SWP_EXCLUSIVE
m68k/mm: remove dummy __swp definitions for nommu
m68k/mm: support __HAVE_ARCH_PTE_SWP_EXCLUSIVE
microblaze/mm: support __HAVE_ARCH_PTE_SWP_EXCLUSIVE
mips/mm: support __HAVE_ARCH_PTE_SWP_EXCLUSIVE
nios2/mm: refactor swap PTE layout
nios2/mm: support __HAVE_ARCH_PTE_SWP_EXCLUSIVE
openrisc/mm: support __HAVE_ARCH_PTE_SWP_EXCLUSIVE
parisc/mm: support __HAVE_ARCH_PTE_SWP_EXCLUSIVE
powerpc/mm: support __HAVE_ARCH_PTE_SWP_EXCLUSIVE on 32bit book3s
powerpc/nohash/mm: support __HAVE_ARCH_PTE_SWP_EXCLUSIVE
riscv/mm: support __HAVE_ARCH_PTE_SWP_EXCLUSIVE
sh/mm: support __HAVE_ARCH_PTE_SWP_EXCLUSIVE
sparc/mm: support __HAVE_ARCH_PTE_SWP_EXCLUSIVE on 32bit
sparc/mm: support __HAVE_ARCH_PTE_SWP_EXCLUSIVE on 64bit
um/mm: support __HAVE_ARCH_PTE_SWP_EXCLUSIVE
x86/mm: support __HAVE_ARCH_PTE_SWP_EXCLUSIVE also on 32bit
xtensa/mm: support __HAVE_ARCH_PTE_SWP_EXCLUSIVE
mm: remove __HAVE_ARCH_PTE_SWP_EXCLUSIVE
arm/mm: fix swp type masking in __swp_entry()

David Howells (1):
mm: move FOLL_* defs to mm_types.h

David Stevens (1):
mm: fix khugepaged with shmem_enabled=advise

Deming Wang (1):
Documentation: mm: use `s/higmem/highmem/` fix typo for highmem

Eugen Hristev (1):
.mailmap: update e-mail address for Eugen Hristev

Fabio M. De Francesco (3):
mm: remove an ambiguous sentence from kmap_local_folio() kdocs
mm: fix spelling mistake in highmem.h
mm/highmem: add notes about conversions from kmap{,_atomic}()

Fedor Pchelkin (1):
squashfs: harden sanity check in squashfs_read_xattr_id_table

Feng Tang (2):
mm/slab: add is_kmalloc_cache() helper function
mm/kasan: simplify and refine kasan_cache code

Frank van der Linden (1):
mm/debug: use valid physical memory for pmd/pud tests

Greg Kroah-Hartman (1):
mm: remove PageMovable export

Hao Sun (1):
mm: new primitive kvmemdup()

Herton R. Krzesinski (1):
tools/mm: allow users to provide additional cflags/ldflags

Huaisheng Ye (1):
mm/damon/core: skip apply schemes if empty

Huang Ying (9):
migrate_pages: organize stats with struct migrate_pages_stats
migrate_pages: separate hugetlb folios migration
migrate_pages: restrict number of pages to migrate in batch
migrate_pages: split unmap_and_move() to _unmap() and _move()
migrate_pages: batch _unmap and _move
migrate_pages: move migrate_folio_unmap()
migrate_pages: share more code between _unmap and _move
migrate_pages: batch flushing TLB
migrate_pages: move THP/hugetlb migration support check to simplify code

Hyeonggon Yoo (1):
mm/page_owner: record single timestamp value for high order allocations

Hyunmin Lee (1):
mm/vmalloc: replace BUG_ON with a simple if statement

Isaac J. Manjarres (2):
Revert "mm: kmemleak: alloc gray object for reserved region with direct map"
of: reserved_mem: Have kmemleak ignore dynamically allocated reserved mem

Jakub Wilk (1):
mm: fix typo in __vm_enough_memory warning

James Morse (1):
ia64: fix build error due to switch case label appearing next to declaration

Jan Kara (1):
fs: don't allocate blocks beyond EOF from __mpage_writepage

Jann Horn (1):
mm/khugepaged: fix ->anon_vma race

Jason Gunthorpe (13):
mm/gup: have internal functions get the mmap_read_lock()
mm/gup: remove obsolete FOLL_LONGTERM comment
mm/gup: don't call __gup_longterm_locked() if FOLL_LONGTERM cannot be set
mm/gup: move try_grab_page() to mm/internal.h
mm/gup: simplify the external interface functions and consolidate invariants
mm/gup: add an assertion that the mmap lock is locked
mm/gup: remove locked being NULL from faultin_vma_page_range()
mm/gup: add FOLL_UNLOCKABLE
mm/gup: make locked never NULL in the internal GUP functions
mm/gup: remove pin_user_pages_fast_only()
mm/gup: make get_user_pages_fast_only() return the common return value
mm/gup: move gup_must_unshare() to mm/internal.h
mm/gup: move private gup FOLL_ flags to internal.h

Jeff Xie (1):
scripts/gdb: fix 'lx-current' for x86

Jeff Xu (3):
mm/memfd: add MFD_NOEXEC_SEAL and MFD_EXEC
mm/memfd: add write seals when apply SEAL_EXEC to executable memfd
selftests/memfd: add tests for MFD_NOEXEC_SEAL MFD_EXEC

JeongHyeon Lee (1):
zram: fix typos in comments

Jianlin Lv (1):
tools/vm/page_owner_sort: free memory before exit

Jiaqi Yan (3):
mm: memory-failure: add memory failure stats to sysfs
mm: memory-failure: bump memory failure stats to pglist_data
mm: memory-failure: document memory failure stats

Joey Gouly (1):
mm: implement memory-deny-write-execute as a prctl

Johannes Weiner (4):
mm: memcontrol: skip moving non-present pages that are mapped elsewhere
mm: rmap: remove lock_page_memcg()
mm: memcontrol: deprecate charge moving
workingset: fix confusion around eviction vs refault container

Jongwoo Han (1):
mm/gup.c: fix typo in comments

Kairui Song (4):
swapfile: get rid of volatile and avoid redundant read
swap: avoid a redundant pte map if ra window is 1
swap: fold swap_ra_clamp_pfn into swap_ra_info
swap: avoid holding swap reference in swap_cache_get_folio

Kees Cook (1):
kselftest: vm: add tests for memory-deny-write-execute

Kefeng Wang (13):
mm: huge_memory: convert madvise_free_huge_pmd to use a folio
mm: swap: convert mark_page_lazyfree() to folio_mark_lazyfree()
mm: huge_memory: convert split_huge_pages_all() to use a folio
mm: page_idle: convert page idle to use a folio
mm/damon: introduce damon_get_folio()
mm/damon: convert damon_ptep/pmdp_mkold() to use a folio
mm/damon/paddr: convert damon_pa_*() to use a folio
mm/damon/vaddr: convert damon_young_pmd_entry() to use a folio
mm/damon: remove unneeded damon_get_page()
mm/damon/vaddr: convert hugetlb related functions to use a folio
mm: memcg: fix NULL pointer in mem_cgroup_track_foreign_dirty_slowpath()
mm: madvise: use vm_normal_folio() in madvise_free_pte_range()
mm: hwpoison: support recovery from ksm_might_need_to_copy()

Kele Huang (1):
mm: fix comment of page table counter

Kuan-Ying Lee (2):
mm/gup: add folio to list when folio_isolate_lru() succeed
kasan: infer allocation size by scanning metadata

Levi Yun (1):
mm/cma: fix potential memory loss on cma_declare_contiguous_nid

Li Lingfeng (1):
lib: parser: optimize match_NUMBER apis to use local array

Li Zhijian (1):
mm/memremap.c: fix outdated comment in devm_memremap_pages

Liam Howlett (2):
maple_tree: remove GFP_ZERO from kmem_cache_alloc() and kmem_cache_alloc_bulk()
maple_tree: fix mas_empty_area_rev() lower bound validation

Liam R. Howlett (50):
maple_tree: add mas_init() function
maple_tree: fix potential rcu issue
maple_tree: reduce user error potential
test_maple_tree: test modifications while iterating
maple_tree: fix handle of invalidated state in mas_wr_store_setup()
maple_tree: fix mas_prev() and mas_find() state handling
mm: expand vma iterator interface
mm/mmap: convert brk to use vma iterator
kernel/fork: convert forking to using the vmi iterator
mmap: convert vma_link() vma iterator
mm/mmap: remove preallocation from do_mas_align_munmap()
mmap: change do_mas_munmap and do_mas_aligned_munmap() to use vma iterator
mmap: convert vma_expand() to use vma iterator
mm: add temporary vma iterator versions of vma_merge(), split_vma(), and __split_vma()
ipc/shm: use the vma iterator for munmap calls
ipc/shm: introduce new do_vma_munmap() to munmap
userfaultfd: use vma iterator
mm: change mprotect_fixup to vma iterator
mlock: convert mlock to vma iterator
coredump: convert to vma iterator
mempolicy: convert to vma iterator
task_mmu: convert to vma iterator
sched: convert to vma iterator
madvise: use vmi iterator for __split_vma() and vma_merge()
mmap: pass through vmi iterator to __split_vma()
mmap: use vmi version of vma_merge()
mm/mremap: use vmi version of vma_merge()
nommu: convert nommu to using the vma iterator
nommu: pass through vma iterator to shrink_vma()
mm: switch vma_merge(), split_vma(), and __split_vma to vma iterator
mm/damon/vaddr-test.h: stop using vma_mas_store() for maple tree store
mmap: convert __vma_adjust() to use vma iterator
mm: pass through vma iterator to __vma_adjust()
madvise: use split_vma() instead of __split_vma()
mm: remove unnecessary write to vma iterator in __vma_adjust()
mm: pass vma iterator through to __vma_adjust()
mm: add vma iterator to vma_adjust() arguments
mmap: clean up mmap_region() unrolling
mm: change munmap splitting order and move_vma()
mm/mmap: move anon_vma setting in __vma_adjust()
mm/mmap: refactor locking out of __vma_adjust()
mm/mmap: use vma_prepare() and vma_complete() in vma_expand()
mm/mmap: introduce init_vma_prep() and init_multi_vma_prep()
mm: don't use __vma_adjust() in __split_vma()
mm/mremap: convert vma_adjust() to vma_expand()
mm/mmap: don't use __vma_adjust() in shift_arg_pages()
mm/mmap: introduce dup_vma_anon() helper
mm/mmap: convert do_brk_flags() to use vma_prepare() and vma_complete()
mm/mmap: remove __vma_adjust()
vma_merge: set vma iterator to correct position.

Longlong Xia (2):
mm/swapfile: add cond_resched() in get_swap_pages()
mm/swapfile: remove pr_debug in get_swap_pages()

Lorenzo Stoakes (7):
mm: vmalloc: correct use of __GFP_NOWARN mask in __vmalloc_area_node()
selftest/vm: add mremap expand merge offset test
mm: pagevec: add folio_batch_reinit()
mm: mlock: use folios and a folio batch internally
m68k/mm/motorola: specify pmd_page() type
mm: mlock: update the interface to use folios
Documentation/mm: update references to __m[un]lock_page() to *_folio()

Matthew Wilcox (1):
mm: memcg: add folio_memcg_check()

Matthew Wilcox (Oracle) (63):
buffer: add b_folio as an alias of b_page
buffer: replace obvious uses of b_page with b_folio
buffer: use b_folio in touch_buffer()
buffer: use b_folio in end_buffer_async_read()
buffer: use b_folio in end_buffer_async_write()
page_io: remove buffer_head include
buffer: use b_folio in mark_buffer_dirty()
gfs2: replace obvious uses of b_page with b_folio
jbd2: replace obvious uses of b_page with b_folio
nilfs2: replace obvious uses of b_page with b_folio
reiserfs: replace obvious uses of b_page with b_folio
mpage: use b_folio in do_mpage_readpage()
highmem: round down the address passed to kunmap_flush_on_unmap()
mm: remove folio_pincount_ptr() and head_compound_pincount()
mm: convert head_subpages_mapcount() into folio_nr_pages_mapped()
doc: clarify refcount section by referring to folios & pages
mm: convert total_compound_mapcount() to folio_total_mapcount()
mm: convert page_remove_rmap() to use a folio internally
mm: convert page_add_anon_rmap() to use a folio internally
mm: convert page_add_file_rmap() to use a folio internally
mm: add folio_add_new_anon_rmap()
page_alloc: use folio fields directly
mm: use a folio in hugepage_add_anon_rmap() and hugepage_add_new_anon_rmap()
mm: use entire_mapcount in __page_dup_rmap()
mm/debug: remove call to head_compound_mapcount()
hugetlb: remove uses of folio_mapcount_ptr
mm: convert page_mapcount() to use folio_entire_mapcount()
mm: remove head_compound_mapcount() and _ptr functions
mm: reimplement compound_order()
mm: reimplement compound_nr()
mm: convert set_compound_page_dtor() and set_compound_order() to folios
mm: convert is_transparent_hugepage() to use a folio
mm: convert destroy_large_folio() to use folio_dtor
hugetlb: remove uses of compound_dtor and compound_nr
mm: remove 'First tail page' members from struct page
doc: correct struct folio kernel-doc
mm: move page->deferred_list to folio->_deferred_list
mm/huge_memory: remove page_deferred_list()
mm/huge_memory: convert get_deferred_split_queue() to take a folio
mm: convert deferred_split_huge_page() to deferred_split_folio()
shmem: convert shmem_write_end() to use a folio
mm: add vma_alloc_zeroed_movable_folio()
mm: convert do_anonymous_page() to use a folio
mm: convert wp_page_copy() to use folios
mm: use a folio in copy_pte_range()
mm: use a folio in copy_present_pte()
mm/fs: convert inode_attach_wb() to take a folio
mm: convert mem_cgroup_css_from_page() to mem_cgroup_css_from_folio()
mm: remove page_evictable()
mm: remove mlock_vma_page()
mm: remove munlock_vma_page()
mm: clean up mlock_page / munlock_page references in comments
rmap: add folio parameter to __page_set_anon_rmap()
filemap: convert filemap_map_pmd() to take a folio
filemap: convert filemap_range_has_page() to use a folio
readahead: convert readahead_expand() to use a folio
mm: add memcpy_from_file_folio()
fs: convert writepage_t callback to pass a folio
mpage: convert __mpage_writepage() to use a folio more fully
mm: fix memcpy_from_file_folio() integer underflow
filemap: add mapping_read_folio_gfp()
shmem: add shmem_read_folio() and shmem_read_folio_gfp()
shmem: fix W=1 build warnings with CONFIG_SHMEM=n

Mel Gorman (9):
mm/page_alloc: rename ALLOC_HIGH to ALLOC_MIN_RESERVE
mm/page_alloc: treat RT tasks similar to __GFP_HIGH
mm/page_alloc: explicitly record high-order atomic allocations in alloc_flags
mm/page_alloc: explicitly define what alloc flags deplete min reserves
mm/page_alloc: explicitly define how __GFP_HIGH non-blocking allocations accesses reserves
mm, compaction: rename compact_control->rescan to finish_pageblock
mm, compaction: check if a page has been captured before draining PCP pages
mm, compaction: finish scanning the current pageblock if requested
mm, compaction: finish pageblocks on complete migration failure

Michal Hocko (2):
mm/mempolicy: do not duplicate policy if it is not applicable for set_mempolicy_home_node
Revert "mm: add nodes= arg to memory.reclaim"

Mike Kravetz (5):
hugetlb: update vma flag check for hugetlb vma lock
hugetlb: initialize variable to avoid compiler warning
mm: remove zap_page_range and create zap_vma_pages
mm: hugetlb: proc: check for hugetlb shared PMD in /proc/PID/smaps
migrate: hugetlb: check for hugetlb shared PMD in node migration

Mike Rapoport (1):
mm/sparse: fix "unused function 'pgdat_to_phys'" warning

Mike Rapoport (IBM) (7):
mm/page_alloc: invert logic for early page initialisation checks
arm: include asm-generic/memory_model.h from page.h rather than memory.h
m68k: use asm-generic/memory_model.h for both MMU and !MMU
mips: drop definition of pfn_valid() for DISCONTIGMEM
mm, arch: add generic implementation of pfn_valid() for FLATMEM
m68k/nommu: add missing definition of ARCH_PFN_OFFSET
sh: initialize max_mapnr

NeilBrown (1):
mm: discard __GFP_ATOMIC

Nhat Pham (1):
zsmalloc: fix a race with deferred_handles storing

Pasha Tatashin (2):
mm/page_ext: do not allocate space for page_ext->flags if not needed
mm/page_ext: init page_ext early if there are no deferred struct pages

Pengfei Xu (1):
selftests/filesystems: grant executable permission to run_fat_tests.sh

Peter Xu (14):
mm/uffd: always wr-protect pte in pte|pmd_mkuffd_wp()
mm/hugetlb: let vma_offset_start() to return start
mm/hugetlb: don't wait for migration entry during follow page
mm/hugetlb: document huge_pte_offset usage
mm/hugetlb: move swap entry handling into vma lock when faulted
mm/hugetlb: make userfaultfd_huge_must_wait() safe to pmd unshare
mm/hugetlb: make hugetlb_follow_page_mask() safe to pmd unshare
mm/hugetlb: make follow_hugetlb_page() safe to pmd unshare
mm/hugetlb: make walk_hugetlb_range() safe to pmd unshare
mm/hugetlb: introduce hugetlb_walk()
mm/mprotect: use long for page accountings and retval
mm/uffd: detect pgtable allocation failures
selftests/vm: remove __USE_GNU in hugetlb-madvise.c
mm/uffd: fix comment in handling pte markers

Phillip Lougher (1):
Squashfs: fix handling and sanity checking of xattr_ids count

Qi Zheng (2):
mm: shrinkers: fix deadlock in shrinker debugfs
mm: page_alloc: call panic() when memoryless node allocation fails

Qinglin Pan (1):
lib/test_vmalloc.c: add parameter use_huge for fix_size_alloc_test

Randy Dunlap (1):
freevxfs: Kconfig: fix spelling

Roman Gushchin (1):
mm: memcontrol: rename memcg_kmem_enabled()

SeongJae Park (38):
mm/damon/core: implement damos filter
mm/damon/paddr: support DAMOS filters
mm/damon/reclaim: add a parameter called skip_anon for avoiding anonymous pages reclamation
Docs/admin-guide/damon/reclaim: document 'skip_anon' parameter
mm/damon/sysfs-schemes: implement filters directory
mm/damon/sysfs-schemes: implement filter directory
mm/damon/sysfs-schemes: connect filter directory and filters directory
mm/damon/sysfs-schemes: implement scheme filters
selftests/damon/sysfs: test filters directory
Docs/admin-guide/mm/damon/usage: document DAMOS filters of sysfs
Docs/ABI/damon: document scheme filters files
mm/page_reporting: replace rcu_access_pointer() with rcu_dereference_protected()
MAINTAINERS: add types to akpm/mm git trees entries
MAINTAINERS/MEMORY MANAGEMENT: add tools/vm/ as managed files
tools/vm: rename tools/vm to tools/mm
selftests/vm: rename selftests/vm to selftests/mm
Docs/admin-guide/mm/numaperf: increase depth of subsections
mm/damon/vaddr: rename 'damon_young_walk_private->page_sz' to 'folio_sz'
mm/damon/vaddr: support folio of neither HPAGE_PMD_SIZE nor PAGE_SIZE
mm/damon/vaddr: record appropriate folio size when the access is not found
mm/damon/paddr: rename 'damon_pa_access_chk_result->page_sz' to 'folio_sz'
mm/damon/paddr: remove folio_sz field from damon_pa_access_chk_result
mm/damon/paddr: remove damon_pa_access_chk_result struct
mm/damon/core: update kernel-doc comments for DAMOS action supports of each DAMON operations set
mm/damon/core: update kernel-doc comments for DAMOS filters supports of each DAMON operations set
Docs/mm/damon/index: mention DAMOS on the intro
Docs/admin-guide/mm/damon/usage: update DAMOS actions/filters supports of each DAMON operations set
Docs/mm/damon: add a maintainer-profile for DAMON
MAINTAINERS/DAMON: link maintainer profile, git trees, and website
selftests/damon/sysfs: hide expected write failures
selftests/damon/debugfs_rm_non_contexts: hide expected write error messages
mm/damon: update comments in damon.h for damon_attrs
mm/damon/core: update monitoring results for new monitoring attributes
mm/damon/core-test: add a test for damon_update_monitoring_results()
Docs/admin-guide/mm/damon/usage: add DAMON debugfs interface deprecation notice
mm/damon/Kconfig: add DAMON debugfs interface deprecation notice
mm/damon/dbgfs: print DAMON debugfs interface deprecation message
mm/memory_hotplug: cleanup return value handing in do_migrate_range()

Sergey Senozhatsky (5):
zram: correctly handle all next_arg() cases
zsmalloc: rework zspage chain size selection
zsmalloc: skip chain size calculation for pow_of_2 classes
zsmalloc: make zspage chain size configurable
zsmalloc: set default zspage chain size to 8

Seth Jenkins (1):
aio: fix mremap after fork null-deref

Shiyang Ruan (1):
fsdax: dax_unshare_iter() should return a valid length

Sidhartha Kumar (28):
mm: move folio_set_compound_order() to mm/internal.h
mm: introduce folio_is_pfmemalloc
mm: remove the hugetlb field from struct page
mm/memory-failure: convert __get_huge_page_for_hwpoison() to folios
mm/memory-failure: convert try_memory_failure_hugetlb() to folios
mm/memory-failure: convert hugetlb_clear_page_hwpoison to folios
mm/memory-failure: convert free_raw_hwp_pages() to folios
mm/memory-failure: convert raw_hwp_list_head() to folios
mm/memory-failure: convert __free_raw_hwp_pages() to folios
mm/memory-failure: convert hugetlb_set_page_hwpoison() to folios
mm/memory-failure: convert unpoison_memory() to folios
mm/hugetlb: convert get_hwpoison_huge_page() to folios
mm/hugetlb: convert isolate_hugetlb to folios
mm/hugetlb: convert __update_and_free_page() to folios
mm/hugetlb: convert dequeue_hugetlb_page functions to folios
mm/hugetlb: convert alloc_surplus_huge_page() to folios
mm/hugetlb: increase use of folios in alloc_huge_page()
mm/hugetlb: convert alloc_migrate_huge_page to folios
mm/hugetlb: convert restore_reserve_on_error() to folios
mm/hugetlb: convert demote_free_huge_page to folios
mm/hugetlb: convert hugetlb_install_page to folios
mm/hugetlb: convert hugetlbfs_pagecache_present() to folios
mm/hugetlb: convert putback_active_hugepage to take in a folio
mm/hugetlb: convert hugetlb fault paths to use alloc_hugetlb_folio()
mm/hugetlb: convert restore_reserve_on_error to take in a folio
mm/hugetlb: convert hugetlb_add_to_page_cache to take in a folio
mm/hugetlb: convert hugetlb_wp() to take in a folio
Documentation/mm: update hugetlbfs documentation to mention alloc_hugetlb_folio

Suren Baghdasaryan (8):
kernel/fork: convert vma assignment to a memcpy
mm: introduce vma->vm_flags wrapper functions
mm: replace VM_LOCKED_CLEAR_MASK with VM_LOCKED_MASK
mm: replace vma->vm_flags direct modifications with modifier calls
mm: replace vma->vm_flags indirect modification in ksm_madvise
mm: introduce __vm_flags_mod and use it in untrack_pfn
mm: export dump_mm()
mm: introduce vm_flags_reset_once to replace WRITE_ONCE vm_flags updates

T.J. Alumbaugh (7):
mm: multi-gen LRU: section for working set protection
mm: multi-gen LRU: section for rmap/PT walk feedback
mm: multi-gen LRU: section for Bloom filters
mm: multi-gen LRU: section for memcg LRU
mm: multi-gen LRU: improve lru_gen_exit_memcg()
mm: multi-gen LRU: improve walk_pmd_range()
mm: multi-gen LRU: simplify lru_gen_look_around()

Thomas Weißschuh (1):
mm/damon/sysfs: make kobj_type structures constant

Tom Saeger (1):
sh: define RUNTIME_DISCARD_EXIT

Tong Tiangen (1):
memory tier: release the new_memtier in find_create_memory_tier()

Uladzislau Rezki (Sony) (2):
mm: vmalloc: avoid calling __find_vmap_area() twice in __vunmap()
mm: vmalloc: replace BUG_ON() by WARN_ON_ONCE()

Vernon Yang (11):
maple_tree: remove extra space and blank line
maple_tree: remove extra return statement
maple_tree: use mt_node_max() instead of direct operations mt_max[]
maple_tree: use macro MA_ROOT_PARENT instead of number
maple_tree: remove the redundant code
maple_tree: refine ma_state init from mas_start()
maple_tree: refine mab_calc_split function
maple_tree: remove the parameter entry of mas_preallocate
mm/mmap: fix typo in comment
maple_tree: fix comment of mte_destroy_walk
mm/mmap: fix comment of unmapped_area{_topdown}

Vishal Moola (Oracle) (41):
mm/memory: add vm_normal_folio()
madvise: convert madvise_cold_or_pageout_pte_range() to use folios
mm/damon: convert damon_pa_mark_accessed_or_deactivate() to use folios
mm/swap: convert deactivate_page() to folio_deactivate()
ext4: convert mext_page_double_lock() to mext_folio_double_lock()
mm/khugepaged: introduce release_pte_folio() to replace release_pte_page()
mm/khugepaged: convert release_pte_pages() to use folios
pagemap: add filemap_grab_folio()
filemap: add filemap_get_folios_tag()
filemap: convert __filemap_fdatawait_range() to use filemap_get_folios_tag()
page-writeback: convert write_cache_pages() to use filemap_get_folios_tag()
afs: convert afs_writepages_region() to use filemap_get_folios_tag()
btrfs: convert btree_write_cache_pages() to use filemap_get_folio_tag()
btrfs: convert extent_write_cache_pages() to use filemap_get_folios_tag()
ceph: convert ceph_writepages_start() to use filemap_get_folios_tag()
cifs: convert wdata_alloc_and_fillpages() to use filemap_get_folios_tag()
ext4: convert mpage_prepare_extent_to_map() to use filemap_get_folios_tag()
f2fs: convert f2fs_fsync_node_pages() to use filemap_get_folios_tag()
f2fs: convert f2fs_flush_inline_data() to use filemap_get_folios_tag()
f2fs: convert f2fs_sync_node_pages() to use filemap_get_folios_tag()
f2fs: convert f2fs_write_cache_pages() to use filemap_get_folios_tag()
f2fs: convert last_fsync_dnode() to use filemap_get_folios_tag()
f2fs: convert f2fs_sync_meta_pages() to use filemap_get_folios_tag()
gfs2: convert gfs2_write_cache_jdata() to use filemap_get_folios_tag()
nilfs2: convert nilfs_lookup_dirty_data_buffers() to use filemap_get_folios_tag()
nilfs2: convert nilfs_lookup_dirty_node_buffers() to use filemap_get_folios_tag()
nilfs2: convert nilfs_btree_lookup_dirty_buffers() to use filemap_get_folios_tag()
nilfs2: convert nilfs_copy_dirty_pages() to use filemap_get_folios_tag()
nilfs2: convert nilfs_clear_dirty_pages() to use filemap_get_folios_tag()
filemap: remove find_get_pages_range_tag()
mm/khugepaged: fix invalid page access in release_pte_pages()
mm: add folio_estimated_sharers()
mm/mempolicy: convert queue_pages_pmd() to queue_folios_pmd()
mm/mempolicy: convert queue_pages_pte_range() to queue_folios_pte_range()
mm/mempolicy: convert queue_pages_hugetlb() to queue_folios_hugetlb()
mm/mempolicy: convert queue_pages_required() to queue_folio_required()
mm/mempolicy: convert migrate_page_add() to migrate_folio_add()
mm: add folio_get_nontail_page()
mm/migrate: add folio_movable_ops()
mm/migrate: convert isolate_movable_page() to use folios
mm/migrate: convert putback_movable_pages() to use folios

Vlastimil Babka (1):
mm, mremap: fix mremap() expanding for vma's with vm_ops->close()

Waiman Long (2):
mm/kmemleak: simplify kmemleak_cond_resched() usage
mm/kmemleak: fix UAF bug in kmemleak_scan()

Wei Yang (1):
maple_tree: should get pivots boundary by type

Wenchao Hao (1):
cma: tracing: print alloc result in trace_cma_alloc_finish

Xu Panda (2):
selftests/vm: ksm_functional_tests: fix a typo in comment
mm/damon/sysfs-schemes: use strscpy() to instead of strncpy()

Yafang Shao (1):
mm: percpu: fix incorrect size in pcpu_obj_full_size()

Yajun Deng (1):
mm/page_alloc: reduce fallbacks to (MIGRATE_PCPTYPES - 1)

Yang Yang (1):
swap_state: update shadow_nodes for anonymous page

Yin Fengwei (1):
mm/thp: check and bail out if page in deferred queue already

Yu Zhao (12):
mm: multi-gen LRU: rename lru_gen_struct to lru_gen_folio
mm: multi-gen LRU: rename lrugen->lists[] to lrugen->folios[]
mm: multi-gen LRU: remove eviction fairness safeguard
mm: multi-gen LRU: remove aging fairness safeguard
mm: multi-gen LRU: shuffle should_run_aging()
mm: multi-gen LRU: per-node lru_gen_folio lists
mm: multi-gen LRU: clarify scan_control flags
mm: multi-gen LRU: simplify arch_has_hw_pte_young() check
mm: add vma_has_recency()
mm: support POSIX_FADV_NOREUSE
mm: multi-gen LRU: fix crash during cgroup migration
mm: multi-gen LRU: avoid futile retries

Zach O'Keefe (1):
mm/MADV_COLLAPSE: catch !none !huge !bad pmd lookups

Zhaoyang Huang (2):
mm: use stack_depot_early_init for kmemleak
mm: move KMEMLEAK's Kconfig items from lib to mm

ye xingchen (1):
Kconfig.debug: fix the help description in SCHED_DEBUG

.mailmap | 3 +
Documentation/ABI/stable/sysfs-devices-node | 39 +
Documentation/ABI/testing/sysfs-kernel-mm-damon | 29 +
Documentation/admin-guide/cgroup-v1/memory.rst | 13 +-
Documentation/admin-guide/cgroup-v2.rst | 15 +-
Documentation/admin-guide/mm/damon/reclaim.rst | 9 +
Documentation/admin-guide/mm/damon/usage.rst | 105 +-
Documentation/admin-guide/mm/hugetlbpage.rst | 6 +-
.../admin-guide/mm/idle_page_tracking.rst | 2 +-
Documentation/admin-guide/mm/numaperf.rst | 8 +-
Documentation/admin-guide/mm/pagemap.rst | 4 +-
Documentation/core-api/pin_user_pages.rst | 31 +-
Documentation/dev-tools/kasan.rst | 17 +
Documentation/mm/balance.rst | 2 +-
Documentation/mm/damon/index.rst | 22 +-
Documentation/mm/damon/maintainer-profile.rst | 62 ++
Documentation/mm/highmem.rst | 43 +-
Documentation/mm/hugetlbfs_reserv.rst | 21 +-
Documentation/mm/multigen_lru.rst | 86 +-
Documentation/mm/page_owner.rst | 2 +-
Documentation/mm/slub.rst | 2 +-
Documentation/mm/transhuge.rst | 24 +-
Documentation/mm/unevictable-lru.rst | 151 +--
Documentation/mm/zsmalloc.rst | 168 +++
.../translations/zh_CN/mm/hugetlbfs_reserv.rst | 14 +-
Documentation/translations/zh_CN/mm/page_owner.rst | 2 +-
MAINTAINERS | 14 +-
arch/alpha/include/asm/page.h | 9 +-
arch/alpha/include/asm/pgtable.h | 40 +-
arch/arc/include/asm/page.h | 1 -
arch/arc/include/asm/pgtable-bits-arcv2.h | 26 +-
arch/arm/include/asm/memory.h | 2 -
arch/arm/include/asm/page.h | 2 +
arch/arm/include/asm/pgtable-2level.h | 3 +
arch/arm/include/asm/pgtable-3level.h | 3 +
arch/arm/include/asm/pgtable.h | 34 +-
arch/arm/kernel/process.c | 2 +-
arch/arm64/include/asm/page.h | 4 +-
arch/arm64/include/asm/pgtable.h | 1 -
arch/arm64/kernel/vdso.c | 6 +-
arch/arm64/mm/fault.c | 4 +-
arch/csky/abiv1/inc/abi/pgtable-bits.h | 13 +-
arch/csky/abiv2/inc/abi/pgtable-bits.h | 19 +-
arch/csky/include/asm/page.h | 1 -
arch/csky/include/asm/pgtable.h | 17 +
arch/hexagon/include/asm/page.h | 1 -
arch/hexagon/include/asm/pgtable.h | 36 +-
arch/ia64/include/asm/page.h | 18 +-
arch/ia64/include/asm/pgtable.h | 31 +-
arch/ia64/kernel/sys_ia64.c | 7 +-
arch/ia64/mm/init.c | 8 +-
arch/loongarch/include/asm/page.h | 13 -
arch/loongarch/include/asm/pgtable-bits.h | 4 +
arch/loongarch/include/asm/pgtable.h | 38 +-
arch/loongarch/include/asm/tlb.h | 2 +-
arch/m68k/include/asm/mcf_pgtable.h | 35 +-
arch/m68k/include/asm/motorola_pgtable.h | 39 +-
arch/m68k/include/asm/page.h | 6 +-
arch/m68k/include/asm/page_mm.h | 1 -
arch/m68k/include/asm/page_no.h | 11 +-
arch/m68k/include/asm/pgtable_no.h | 6 -
arch/m68k/include/asm/sun3_pgtable.h | 38 +-
arch/microblaze/include/asm/page.h | 1 -
arch/microblaze/include/asm/pgtable.h | 44 +-
arch/mips/include/asm/page.h | 28 -
arch/mips/include/asm/pgtable-32.h | 88 +-
arch/mips/include/asm/pgtable-64.h | 23 +-
arch/mips/include/asm/pgtable.h | 35 +
arch/nios2/include/asm/page.h | 9 -
arch/nios2/include/asm/pgtable-bits.h | 3 +
arch/nios2/include/asm/pgtable.h | 37 +-
arch/openrisc/include/asm/page.h | 2 -
arch/openrisc/include/asm/pgtable.h | 40 +-
arch/parisc/include/asm/page.h | 4 -
arch/parisc/include/asm/pgtable.h | 40 +-
arch/powerpc/include/asm/book3s/32/pgtable.h | 37 +-
arch/powerpc/include/asm/book3s/64/pgtable.h | 1 -
arch/powerpc/include/asm/nohash/32/pgtable.h | 22 +-
arch/powerpc/include/asm/nohash/32/pte-40x.h | 6 +-
arch/powerpc/include/asm/nohash/32/pte-44x.h | 18 +-
arch/powerpc/include/asm/nohash/32/pte-85xx.h | 4 +-
arch/powerpc/include/asm/nohash/64/pgtable.h | 24 +-
arch/powerpc/include/asm/nohash/pgtable.h | 15 +
arch/powerpc/include/asm/nohash/pte-e500.h | 1 -
arch/powerpc/include/asm/page.h | 9 -
arch/powerpc/kernel/pci_64.c | 2 +-
arch/powerpc/kernel/vdso.c | 4 +-
arch/powerpc/kvm/book3s_hv_uvmem.c | 6 +-
arch/powerpc/kvm/book3s_xive_native.c | 2 +-
arch/powerpc/mm/book3s64/subpage_prot.c | 2 +-
arch/powerpc/platforms/book3s/vas-api.c | 4 +-
arch/powerpc/platforms/cell/spufs/file.c | 14 +-
arch/powerpc/platforms/pseries/vas.c | 3 +-
arch/riscv/include/asm/page.h | 5 -
arch/riscv/include/asm/pgtable-bits.h | 3 +
arch/riscv/include/asm/pgtable.h | 28 +-
arch/riscv/kernel/vdso.c | 6 +-
arch/s390/include/asm/page.h | 5 +-
arch/s390/include/asm/pgtable.h | 1 -
arch/s390/kernel/vdso.c | 4 +-
arch/s390/mm/gmap.c | 11 +-
arch/sh/include/asm/page.h | 3 -
arch/sh/include/asm/pgtable_32.h | 53 +-
arch/sh/kernel/cpu/sh4/sq.c | 2 +-
arch/sh/kernel/vmlinux.lds.S | 1 +
arch/sh/mm/init.c | 1 +
arch/sparc/include/asm/page_32.h | 1 -
arch/sparc/include/asm/pgtable_32.h | 26 +-
arch/sparc/include/asm/pgtable_64.h | 37 +-
arch/sparc/include/asm/pgtsrmmu.h | 14 +-
arch/um/include/asm/page.h | 1 -
arch/um/include/asm/pgtable.h | 36 +-
arch/x86/entry/vdso/vma.c | 4 +-
arch/x86/entry/vsyscall/vsyscall_64.c | 2 +-
arch/x86/include/asm/page.h | 5 +-
arch/x86/include/asm/page_32.h | 4 -
arch/x86/include/asm/page_64.h | 4 -
arch/x86/include/asm/pgtable-2level.h | 26 +-
arch/x86/include/asm/pgtable-3level.h | 26 +-
arch/x86/include/asm/pgtable.h | 27 +-
arch/x86/kernel/cpu/sgx/driver.c | 2 +-
arch/x86/kernel/cpu/sgx/virt.c | 2 +-
arch/x86/mm/fault.c | 23 +-
arch/x86/mm/pat/memtype.c | 14 +-
arch/x86/um/mem_32.c | 2 +-
arch/xtensa/include/asm/page.h | 4 +-
arch/xtensa/include/asm/pgtable.h | 31 +-
block/bdev.c | 78 --
drivers/acpi/pfr_telemetry.c | 2 +-
drivers/android/binder.c | 3 +-
drivers/android/binder_alloc.c | 2 +-
drivers/base/node.c | 3 +
drivers/block/brd.c | 15 +-
drivers/block/zram/zram_drv.c | 69 +-
drivers/char/mem.c | 2 +-
drivers/char/mspec.c | 2 +-
drivers/crypto/hisilicon/qm.c | 2 +-
drivers/dax/device.c | 2 +-
drivers/dma/idxd/cdev.c | 2 +-
drivers/gpu/drm/amd/amdgpu/amdgpu_gem.c | 2 +-
drivers/gpu/drm/amd/amdkfd/kfd_chardev.c | 4 +-
drivers/gpu/drm/amd/amdkfd/kfd_doorbell.c | 4 +-
drivers/gpu/drm/amd/amdkfd/kfd_events.c | 4 +-
drivers/gpu/drm/amd/amdkfd/kfd_process.c | 4 +-
drivers/gpu/drm/drm_gem.c | 2 +-
drivers/gpu/drm/drm_gem_dma_helper.c | 3 +-
drivers/gpu/drm/drm_gem_shmem_helper.c | 2 +-
drivers/gpu/drm/drm_vm.c | 8 +-
drivers/gpu/drm/etnaviv/etnaviv_gem.c | 2 +-
drivers/gpu/drm/exynos/exynos_drm_gem.c | 4 +-
drivers/gpu/drm/gma500/framebuffer.c | 2 +-
drivers/gpu/drm/i810/i810_dma.c | 2 +-
drivers/gpu/drm/i915/gem/i915_gem_mman.c | 4 +-
drivers/gpu/drm/mediatek/mtk_drm_gem.c | 2 +-
drivers/gpu/drm/msm/msm_gem.c | 2 +-
drivers/gpu/drm/omapdrm/omap_gem.c | 3 +-
drivers/gpu/drm/rockchip/rockchip_drm_gem.c | 3 +-
drivers/gpu/drm/tegra/gem.c | 5 +-
drivers/gpu/drm/ttm/ttm_bo_vm.c | 3 +-
drivers/gpu/drm/virtio/virtgpu_vram.c | 2 +-
drivers/gpu/drm/vmwgfx/vmwgfx_ttm_glue.c | 2 +-
drivers/gpu/drm/xen/xen_drm_front_gem.c | 3 +-
drivers/hsi/clients/cmt_speech.c | 2 +-
drivers/hwtracing/intel_th/msu.c | 2 +-
drivers/hwtracing/stm/core.c | 2 +-
drivers/infiniband/hw/hfi1/file_ops.c | 4 +-
drivers/infiniband/hw/mlx5/main.c | 4 +-
drivers/infiniband/hw/qib/qib_file_ops.c | 13 +-
drivers/infiniband/hw/usnic/usnic_ib_verbs.c | 2 +-
drivers/infiniband/hw/vmw_pvrdma/pvrdma_verbs.c | 2 +-
drivers/iommu/tegra-smmu.c | 4 +-
.../media/common/videobuf2/videobuf2-dma-contig.c | 2 +-
drivers/media/common/videobuf2/videobuf2-vmalloc.c | 2 +-
drivers/media/v4l2-core/videobuf-dma-contig.c | 2 +-
drivers/media/v4l2-core/videobuf-dma-sg.c | 4 +-
drivers/media/v4l2-core/videobuf-vmalloc.c | 2 +-
drivers/misc/cxl/context.c | 2 +-
drivers/misc/habanalabs/common/memory.c | 2 +-
drivers/misc/habanalabs/gaudi/gaudi.c | 4 +-
drivers/misc/habanalabs/gaudi2/gaudi2.c | 8 +-
drivers/misc/habanalabs/goya/goya.c | 4 +-
drivers/misc/ocxl/context.c | 4 +-
drivers/misc/ocxl/sysfs.c | 2 +-
drivers/misc/open-dice.c | 18 +-
drivers/misc/sgi-gru/grufile.c | 4 +-
drivers/misc/uacce/uacce.c | 2 +-
drivers/nvdimm/btt.c | 16 +-
drivers/nvdimm/pmem.c | 24 +-
drivers/of/fdt.c | 6 +-
drivers/of/of_reserved_mem.c | 3 +-
drivers/sbus/char/oradax.c | 2 +-
drivers/scsi/cxlflash/ocxl_hw.c | 2 +-
drivers/scsi/sg.c | 2 +-
drivers/staging/media/atomisp/pci/hmm/hmm_bo.c | 2 +-
drivers/staging/media/deprecated/meye/meye.c | 4 +-
.../media/deprecated/stkwebcam/stk-webcam.c | 2 +-
drivers/target/target_core_user.c | 2 +-
drivers/uio/uio.c | 2 +-
drivers/usb/core/devio.c | 3 +-
drivers/usb/mon/mon_bin.c | 3 +-
drivers/vdpa/vdpa_user/iova_domain.c | 2 +-
drivers/vfio/pci/vfio_pci_core.c | 2 +-
drivers/vhost/vdpa.c | 2 +-
drivers/video/fbdev/68328fb.c | 2 +-
drivers/video/fbdev/core/fb_defio.c | 4 +-
drivers/xen/gntalloc.c | 2 +-
drivers/xen/gntdev.c | 4 +-
drivers/xen/privcmd-buf.c | 2 +-
drivers/xen/privcmd.c | 4 +-
fs/afs/write.c | 116 ++-
fs/aio.c | 6 +-
fs/btrfs/extent_io.c | 57 +-
fs/buffer.c | 54 +-
fs/ceph/addr.c | 58 +-
fs/cifs/file.c | 40 +-
fs/coredump.c | 8 +-
fs/cramfs/inode.c | 4 +-
fs/dax.c | 5 +-
fs/erofs/data.c | 2 +-
fs/exec.c | 20 +-
fs/ext4/file.c | 2 +-
fs/ext4/inode.c | 69 +-
fs/ext4/move_extent.c | 46 +-
fs/ext4/super.c | 6 +-
fs/f2fs/checkpoint.c | 49 +-
fs/f2fs/data.c | 84 +-
fs/f2fs/node.c | 72 +-
fs/freevxfs/Kconfig | 2 +-
fs/fs-writeback.c | 10 +-
fs/fuse/dax.c | 2 +-
fs/fuse/file.c | 18 +-
fs/gfs2/aops.c | 64 +-
fs/gfs2/glops.c | 2 +-
fs/gfs2/log.c | 2 +-
fs/gfs2/meta_io.c | 2 +-
fs/hugetlbfs/inode.c | 72 +-
fs/iomap/buffered-io.c | 5 +-
fs/jbd2/commit.c | 33 +-
fs/jbd2/journal.c | 3 +-
fs/mpage.c | 73 +-
fs/nfs/write.c | 7 +-
fs/nilfs2/btnode.c | 2 +-
fs/nilfs2/btree.c | 16 +-
fs/nilfs2/gcinode.c | 2 +-
fs/nilfs2/mdt.c | 4 +-
fs/nilfs2/page.c | 59 +-
fs/nilfs2/segment.c | 46 +-
fs/ntfs3/inode.c | 33 +-
fs/ocfs2/journal.c | 16 +-
fs/orangefs/file.c | 3 +-
fs/orangefs/inode.c | 23 +-
fs/proc/task_mmu.c | 35 +-
fs/proc/task_nommu.c | 2 +-
fs/proc/vmcore.c | 3 +-
fs/ramfs/file-nommu.c | 2 +-
fs/reiserfs/journal.c | 4 +-
fs/reiserfs/tail_conversion.c | 2 +-
fs/romfs/mmap-nommu.c | 2 +-
fs/squashfs/squashfs_fs.h | 2 +-
fs/squashfs/squashfs_fs_sb.h | 2 +-
fs/squashfs/xattr.h | 4 +-
fs/squashfs/xattr_id.c | 2 +-
fs/userfaultfd.c | 115 +-
fs/xfs/xfs_file.c | 2 +-
include/asm-generic/hugetlb.h | 16 +-
include/asm-generic/memory_model.h | 12 +
include/asm-generic/page.h | 2 -
include/linux/blkdev.h | 12 +-
include/linux/buffer_head.h | 5 +-
include/linux/damon.h | 68 +-
include/linux/fs.h | 2 +
include/linux/gfp_types.h | 12 +-
include/linux/highmem-internal.h | 4 +-
include/linux/highmem.h | 72 +-
include/linux/huge_mm.h | 13 +-
include/linux/hugetlb.h | 122 ++-
include/linux/hugetlb_cgroup.h | 8 +-
include/linux/jbd2.h | 2 -
include/linux/kasan.h | 36 +-
include/linux/maple_tree.h | 19 +-
include/linux/memcontrol.h | 71 +-
include/linux/migrate.h | 30 +-
include/linux/mm.h | 554 +++++-----
include/linux/mm_inline.h | 19 +-
include/linux/mm_types.h | 186 ++--
include/linux/mman.h | 34 +
include/linux/mmu_notifier.h | 13 +-
include/linux/mmzone.h | 150 ++-
include/linux/page-flags.h | 1 +
include/linux/page_ext.h | 20 +
include/linux/pagemap.h | 34 +-
include/linux/pagevec.h | 13 +-
include/linux/pagewalk.h | 11 +-
include/linux/pgtable.h | 34 +-
include/linux/pid_namespace.h | 19 +
include/linux/rmap.h | 13 +-
include/linux/sched/coredump.h | 6 +-
include/linux/shmem_fs.h | 18 +-
include/linux/shrinker.h | 5 +-
include/linux/slab_def.h | 2 +-
include/linux/slub_def.h | 2 +-
include/linux/stackdepot.h | 152 ++-
include/linux/string.h | 1 +
include/linux/swap.h | 7 +-
include/linux/swapops.h | 6 +-
include/linux/userfaultfd_k.h | 2 +-
include/linux/vmalloc.h | 1 +
include/linux/writeback.h | 16 +-
include/linux/xarray.h | 3 +-
include/trace/events/cma.h | 32 +-
include/trace/events/mmflags.h | 1 -
include/uapi/linux/fcntl.h | 1 +
include/uapi/linux/memfd.h | 4 +
include/uapi/linux/prctl.h | 6 +
init/main.c | 6 +-
io_uring/io_uring.c | 2 +-
ipc/shm.c | 8 +-
kernel/bpf/ringbuf.c | 4 +-
kernel/bpf/syscall.c | 4 +-
kernel/crash_core.c | 4 +-
kernel/events/core.c | 2 +-
kernel/events/uprobes.c | 5 +-
kernel/fork.c | 23 +-
kernel/kcov.c | 2 +-
kernel/pid_namespace.c | 5 +
kernel/pid_sysctl.h | 60 ++
kernel/relay.c | 2 +-
kernel/sched/fair.c | 14 +-
kernel/sys.c | 33 +
lib/Kconfig.debug | 72 +-
lib/maple_tree.c | 174 ++--
lib/parser.c | 39 +-
lib/stackdepot.c | 654 ++++++------
lib/test_maple_tree.c | 161 +++
lib/test_printf.c | 8 +-
lib/test_vmalloc.c | 8 +-
mm/Kconfig | 21 +-
mm/Kconfig.debug | 74 +-
mm/cma.c | 26 +-
mm/compaction.c | 101 +-
mm/damon/Kconfig | 7 +-
mm/damon/core-test.h | 30 +
mm/damon/core.c | 113 +-
mm/damon/dbgfs.c | 19 +
mm/damon/ops-common.c | 38 +-
mm/damon/ops-common.h | 2 +-
mm/damon/paddr.c | 163 +--
mm/damon/reclaim.c | 19 +
mm/damon/sysfs-common.c | 2 +-
mm/damon/sysfs-common.h | 4 +-
mm/damon/sysfs-schemes.c | 391 ++++++-
mm/damon/sysfs.c | 22 +-
mm/damon/vaddr-test.h | 20 +-
mm/damon/vaddr.c | 68 +-
mm/debug.c | 9 +-
mm/debug_vm_pgtable.c | 129 ++-
mm/fadvise.c | 5 +-
mm/filemap.c | 138 +--
mm/folio-compat.c | 15 +-
mm/gup.c | 382 ++++---
mm/hmm.c | 15 +-
mm/huge_memory.c | 176 ++--
mm/hugetlb.c | 664 ++++++------
mm/hugetlb_cgroup.c | 8 +-
mm/internal.h | 276 ++++-
mm/kasan/common.c | 23 +-
mm/kasan/generic.c | 11 +-
mm/kasan/hw_tags.c | 60 ++
mm/kasan/kasan.h | 33 +-
mm/kasan/report.c | 41 +-
mm/kasan/report_generic.c | 32 +-
mm/kasan/report_hw_tags.c | 35 +-
mm/kasan/report_sw_tags.c | 26 +
mm/kasan/report_tags.c | 2 +-
mm/kasan/shadow.c | 12 +
mm/kasan/sw_tags.c | 6 +-
mm/khugepaged.c | 69 +-
mm/kmemleak.c | 88 +-
mm/kmsan/Makefile | 8 +-
mm/kmsan/core.c | 10 +-
mm/kmsan/instrumentation.c | 23 +
mm/ksm.c | 12 +-
mm/madvise.c | 123 ++-
mm/mapping_dirty_helpers.c | 2 +-
mm/memcontrol.c | 165 ++-
mm/memfd.c | 56 +-
mm/memory-failure.c | 223 ++--
mm/memory-tiers.c | 4 +-
mm/memory.c | 254 +++--
mm/memory_hotplug.c | 16 +-
mm/mempolicy.c | 189 ++--
mm/memremap.c | 6 +-
mm/migrate.c | 934 ++++++++++++-----
mm/migrate_device.c | 6 +-
mm/mlock.c | 351 ++++---
mm/mmap.c | 1090 ++++++++++---------
mm/mmu_notifier.c | 10 -
mm/mprotect.c | 161 +--
mm/mremap.c | 72 +-
mm/nommu.c | 197 ++--
mm/oom_kill.c | 2 +-
mm/page-writeback.c | 107 +-
mm/page_alloc.c | 233 +++--
mm/page_ext.c | 16 +-
mm/page_idle.c | 47 +-
mm/page_io.c | 183 ++--
mm/page_owner.c | 6 +-
mm/page_reporting.c | 6 +-
mm/page_table_check.c | 1 +
mm/page_vma_mapped.c | 9 +-
mm/pagewalk.c | 6 +-
mm/percpu-internal.h | 6 +-
mm/percpu.c | 2 +-
mm/readahead.c | 39 +-
mm/rmap.c | 325 +++---
mm/secretmem.c | 4 +-
mm/shmem.c | 105 +-
mm/shrinker_debug.c | 13 +-
mm/slab.c | 2 +-
mm/slab.h | 18 +-
mm/slab_common.c | 1 -
mm/slub.c | 6 +-
mm/sparse.c | 2 +-
mm/swap.c | 50 +-
mm/swap.h | 10 +-
mm/swap_state.c | 65 +-
mm/swapfile.c | 32 +-
mm/userfaultfd.c | 49 +-
mm/util.c | 26 +-
mm/vmalloc.c | 461 +++++----
mm/vmscan.c | 1094 +++++++++++++-------
mm/workingset.c | 28 +-
mm/z3fold.c | 2 -
mm/zsmalloc.c | 311 ++++--
net/ipv4/tcp.c | 11 +-
scripts/gdb/linux/cpus.py | 2 +-
security/apparmor/policy_unpack.c | 11 +-
security/selinux/selinuxfs.c | 6 +-
sound/core/oss/pcm_oss.c | 2 +-
sound/core/pcm_native.c | 9 +-
sound/soc/pxa/mmp-sspa.c | 2 +-
sound/usb/usx2y/us122l.c | 4 +-
sound/usb/usx2y/usX2Yhwdep.c | 2 +-
sound/usb/usx2y/usx2yhwdeppcm.c | 2 +-
tools/cgroup/memcg_shrinker.py | 3 +-
tools/{vm => mm}/.gitignore | 0
tools/{vm => mm}/Makefile | 4 +-
tools/{vm => mm}/page-types.c | 0
tools/{vm => mm}/page_owner_sort.c | 65 +-
tools/{vm => mm}/slabinfo-gnuplot.sh | 0
tools/{vm => mm}/slabinfo.c | 0
tools/objtool/check.c | 2 +
tools/perf/builtin-kmem.c | 1 -
tools/testing/radix-tree/maple.c | 50 +-
tools/testing/selftests/Makefile | 2 +-
.../selftests/damon/debugfs_rm_non_contexts.sh | 2 +-
tools/testing/selftests/damon/sysfs.sh | 31 +-
.../selftests/filesystems/fat/run_fat_tests.sh | 0
tools/testing/selftests/kselftest_deps.sh | 6 +-
tools/testing/selftests/memfd/fuse_test.c | 1 +
tools/testing/selftests/memfd/memfd_test.c | 341 +++++-
tools/testing/selftests/{vm => mm}/.gitignore | 0
tools/testing/selftests/{vm => mm}/Makefile | 9 +-
.../{vm => mm}/charge_reserved_hugetlb.sh | 0
tools/testing/selftests/{vm => mm}/check_config.sh | 0
.../testing/selftests/{vm => mm}/compaction_test.c | 0
tools/testing/selftests/{vm => mm}/config | 0
tools/testing/selftests/{vm => mm}/cow.c | 231 +++++
tools/testing/selftests/{vm => mm}/gup_test.c | 0
tools/testing/selftests/{vm => mm}/hmm-tests.c | 0
tools/testing/selftests/{vm => mm}/hugepage-mmap.c | 0
.../testing/selftests/{vm => mm}/hugepage-mremap.c | 0
tools/testing/selftests/{vm => mm}/hugepage-shm.c | 0
.../selftests/{vm => mm}/hugepage-vmemmap.c | 0
.../testing/selftests/{vm => mm}/hugetlb-madvise.c | 1 -
.../{vm => mm}/hugetlb_reparenting_test.sh | 0
tools/testing/selftests/{vm => mm}/khugepaged.c | 0
.../selftests/{vm => mm}/ksm_functional_tests.c | 2 +-
tools/testing/selftests/{vm => mm}/ksm_tests.c | 0
tools/testing/selftests/{vm => mm}/madv_populate.c | 0
.../selftests/{vm => mm}/map_fixed_noreplace.c | 0
tools/testing/selftests/{vm => mm}/map_hugetlb.c | 0
tools/testing/selftests/{vm => mm}/map_populate.c | 0
tools/testing/selftests/mm/mdwe_test.c | 197 ++++
tools/testing/selftests/{vm => mm}/memfd_secret.c | 0
tools/testing/selftests/{vm => mm}/migration.c | 0
.../selftests/{vm => mm}/mlock-random-test.c | 0
tools/testing/selftests/{vm => mm}/mlock2-tests.c | 0
tools/testing/selftests/{vm => mm}/mlock2.h | 0
tools/testing/selftests/{vm => mm}/mrelease_test.c | 0
.../selftests/{vm => mm}/mremap_dontunmap.c | 0
tools/testing/selftests/{vm => mm}/mremap_test.c | 119 ++-
.../testing/selftests/{vm => mm}/on-fault-limit.c | 0
tools/testing/selftests/{vm => mm}/pkey-helpers.h | 0
tools/testing/selftests/{vm => mm}/pkey-powerpc.h | 0
tools/testing/selftests/{vm => mm}/pkey-x86.h | 0
.../testing/selftests/{vm => mm}/protection_keys.c | 0
tools/testing/selftests/{vm => mm}/run_vmtests.sh | 0
tools/testing/selftests/{vm => mm}/settings | 0
tools/testing/selftests/{vm => mm}/soft-dirty.c | 0
.../selftests/{vm => mm}/split_huge_page_test.c | 0
tools/testing/selftests/{vm => mm}/test_hmm.sh | 0
tools/testing/selftests/{vm => mm}/test_vmalloc.sh | 0
tools/testing/selftests/{vm => mm}/thuge-gen.c | 0
.../selftests/{vm => mm}/transhuge-stress.c | 0
tools/testing/selftests/{vm => mm}/userfaultfd.c | 0
tools/testing/selftests/{vm => mm}/util.h | 0
.../testing/selftests/{vm => mm}/va_128TBswitch.c | 0
.../testing/selftests/{vm => mm}/va_128TBswitch.sh | 0
.../selftests/{vm => mm}/virtual_address_range.c | 0
tools/testing/selftests/{vm => mm}/vm_util.c | 0
tools/testing/selftests/{vm => mm}/vm_util.h | 0
.../selftests/{vm => mm}/write_hugetlb_memory.sh | 0
.../selftests/{vm => mm}/write_to_hugetlbfs.c | 0
514 files changed, 11969 insertions(+), 7004 deletions(-)
create mode 100644 Documentation/mm/damon/maintainer-profile.rst
create mode 100644 kernel/pid_sysctl.h
rename tools/{vm => mm}/.gitignore (100%)
rename tools/{vm => mm}/Makefile (90%)
rename tools/{vm => mm}/page-types.c (100%)
rename tools/{vm => mm}/page_owner_sort.c (95%)
rename tools/{vm => mm}/slabinfo-gnuplot.sh (100%)
rename tools/{vm => mm}/slabinfo.c (100%)
mode change 100644 => 100755 tools/testing/selftests/filesystems/fat/run_fat_tests.sh
rename tools/testing/selftests/{vm => mm}/.gitignore (100%)
rename tools/testing/selftests/{vm => mm}/Makefile (96%)
rename tools/testing/selftests/{vm => mm}/charge_reserved_hugetlb.sh (100%)
rename tools/testing/selftests/{vm => mm}/check_config.sh (100%)
rename tools/testing/selftests/{vm => mm}/compaction_test.c (100%)
rename tools/testing/selftests/{vm => mm}/config (100%)
rename tools/testing/selftests/{vm => mm}/cow.c (86%)
rename tools/testing/selftests/{vm => mm}/gup_test.c (100%)
rename tools/testing/selftests/{vm => mm}/hmm-tests.c (100%)
rename tools/testing/selftests/{vm => mm}/hugepage-mmap.c (100%)
rename tools/testing/selftests/{vm => mm}/hugepage-mremap.c (100%)
rename tools/testing/selftests/{vm => mm}/hugepage-shm.c (100%)
rename tools/testing/selftests/{vm => mm}/hugepage-vmemmap.c (100%)
rename tools/testing/selftests/{vm => mm}/hugetlb-madvise.c (99%)
rename tools/testing/selftests/{vm => mm}/hugetlb_reparenting_test.sh (100%)
rename tools/testing/selftests/{vm => mm}/khugepaged.c (100%)
rename tools/testing/selftests/{vm => mm}/ksm_functional_tests.c (99%)
rename tools/testing/selftests/{vm => mm}/ksm_tests.c (100%)
rename tools/testing/selftests/{vm => mm}/madv_populate.c (100%)
rename tools/testing/selftests/{vm => mm}/map_fixed_noreplace.c (100%)
rename tools/testing/selftests/{vm => mm}/map_hugetlb.c (100%)
rename tools/testing/selftests/{vm => mm}/map_populate.c (100%)
create mode 100644 tools/testing/selftests/mm/mdwe_test.c
rename tools/testing/selftests/{vm => mm}/memfd_secret.c (100%)
rename tools/testing/selftests/{vm => mm}/migration.c (100%)
rename tools/testing/selftests/{vm => mm}/mlock-random-test.c (100%)
rename tools/testing/selftests/{vm => mm}/mlock2-tests.c (100%)
rename tools/testing/selftests/{vm => mm}/mlock2.h (100%)
rename tools/testing/selftests/{vm => mm}/mrelease_test.c (100%)
rename tools/testing/selftests/{vm => mm}/mremap_dontunmap.c (100%)
rename tools/testing/selftests/{vm => mm}/mremap_test.c (84%)
rename tools/testing/selftests/{vm => mm}/on-fault-limit.c (100%)
rename tools/testing/selftests/{vm => mm}/pkey-helpers.h (100%)
rename tools/testing/selftests/{vm => mm}/pkey-powerpc.h (100%)
rename tools/testing/selftests/{vm => mm}/pkey-x86.h (100%)
rename tools/testing/selftests/{vm => mm}/protection_keys.c (100%)
rename tools/testing/selftests/{vm => mm}/run_vmtests.sh (100%)
mode change 100755 => 100644
rename tools/testing/selftests/{vm => mm}/settings (100%)
rename tools/testing/selftests/{vm => mm}/soft-dirty.c (100%)
rename tools/testing/selftests/{vm => mm}/split_huge_page_test.c (100%)
rename tools/testing/selftests/{vm => mm}/test_hmm.sh (100%)
mode change 100755 => 100644
rename tools/testing/selftests/{vm => mm}/test_vmalloc.sh (100%)
mode change 100755 => 100644
rename tools/testing/selftests/{vm => mm}/thuge-gen.c (100%)
rename tools/testing/selftests/{vm => mm}/transhuge-stress.c (100%)
rename tools/testing/selftests/{vm => mm}/userfaultfd.c (100%)
rename tools/testing/selftests/{vm => mm}/util.h (100%)
rename tools/testing/selftests/{vm => mm}/va_128TBswitch.c (100%)
rename tools/testing/selftests/{vm => mm}/va_128TBswitch.sh (100%)
mode change 100755 => 100644
rename tools/testing/selftests/{vm => mm}/virtual_address_range.c (100%)
rename tools/testing/selftests/{vm => mm}/vm_util.c (100%)
rename tools/testing/selftests/{vm => mm}/vm_util.h (100%)
rename tools/testing/selftests/{vm => mm}/write_hugetlb_memory.sh (100%)
rename tools/testing/selftests/{vm => mm}/write_to_hugetlbfs.c (100%)