[GIT PULL] MM updates for 6.1-rc1

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

 




Linus, please merge the MM changes for this release window. It's quite a large one.

I'm seeing two conflicts:

fs/exec.c.  Stephen's resolution is here:
https://lkml.kernel.org/r/20220914155533.70c10493@xxxxxxxxxxxxxxxx

include/linux/fortify-string.h.  Stephen's resolution is here:
https://lkml.kernel.org/r/20221004204025.7be8a3be@xxxxxxxxxxxxxxxx

Thanks.


The following changes since commit 59298997df89e19aad426d4ae0a7e5037074da5a:

  x86/uaccess: avoid check_object_size() in copy_from_user_nmi() (2022-09-26 12:14:35 -0700)

are available in the Git repository at:

  git://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm tags/mm-stable-2022-10-08

for you to fetch changes up to bbff39cc6cbcb86ccfacb2dcafc79912a9f9df69:

  hugetlb: allocate vma lock for all sharable vmas (2022-10-07 14:28:40 -0700)

----------------------------------------------------------------
- Yu Zhao's Multi-Gen LRU patches are here.  They've been under test in
  linux-next for a couple of months without, to my knowledge, any negative
  reports (or any positive ones, come to that).

- Also the Maple Tree from Liam R.  Howlett.  An overlapping range-based
  tree for vmas.  It it apparently slight more efficient in its own right,
  but is mainly targeted at enabling work to reduce mmap_lock contention.

  Liam has identified a number of other tree users in the kernel which
  could be beneficially onverted to mapletrees.

  Yu Zhao has identified a hard-to-hit but "easy to fix" lockdep splat
  (https://lkml.kernel.org/r/CAOUHufZabH85CeUN-MEMgL8gJGzJEWUrkiM58JkTbBhh-jew0Q@xxxxxxxxxxxxxx).
  This has yet to be addressed due to Liam's unfortunately timed
  vacation.  He is now back and we'll get this fixed up.

- Dmitry Vyukov introduces KMSAN: the Kernel Memory Sanitizer.  It uses
  clang-generated instrumentation to detect used-unintialized bugs down to
  the single bit level.

  KMSAN keeps finding bugs.  New ones, as well as the legacy ones.

- Yang Shi adds a userspace mechanism (madvise) to induce a collapse of
  memory into THPs.

- Zach O'Keefe has expanded Yang Shi's madvise(MADV_COLLAPSE) to support
  file/shmem-backed pages.

- userfaultfd updates from Axel Rasmussen

- zsmalloc cleanups from Alexey Romanov

- cleanups from Miaohe Lin: vmscan, hugetlb_cgroup, hugetlb and memory-failure

- Huang Ying adds enhancements to NUMA balancing memory tiering mode's
  page promotion, with a new way of detecting hot pages.

- memcg updates from Shakeel Butt: charging optimizations and reduced
  memory consumption.

- memcg cleanups from Kairui Song.

- memcg fixes and cleanups from Johannes Weiner.

- Vishal Moola provides more folio conversions

- Zhang Yi removed ll_rw_block() :(

- migration enhancements from Peter Xu

- migration error-path bugfixes from Huang Ying

- Aneesh Kumar added ability for a device driver to alter the memory
  tiering promotion paths.  For optimizations by PMEM drivers, DRM
  drivers, etc.

- vma merging improvements from Jakub Matěn.

- NUMA hinting cleanups from David Hildenbrand.

- xu xin added aditional userspace visibility into KSM merging activity.

- THP & KSM code consolidation from Qi Zheng.

- more folio work from Matthew Wilcox.

- KASAN updates from Andrey Konovalov.

- DAMON cleanups from Kaixu Xia.

- DAMON work from SeongJae Park: fixes, cleanups.

- hugetlb sysfs cleanups from Muchun Song.

- Mike Kravetz fixes locking issues in hugetlbfs and in hugetlb core.

----------------------------------------------------------------
Abel Wu (2):
      mm/mempolicy: fix lock contention on mems_allowed
      mm/page_alloc: only search higher order when fallback

Alexander Potapenko (43):
      stackdepot: reserve 5 extra bits in depot_stack_handle_t
      instrumented.h: allow instrumenting both sides of copy_from_user()
      x86: asm: instrument usercopy in get_user() and put_user()
      asm-generic: instrument usercopy in cacheflush.h
      kmsan: add ReST documentation
      kmsan: introduce __no_sanitize_memory and __no_kmsan_checks
      kmsan: mark noinstr as __no_sanitize_memory
      x86: kmsan: pgtable: reduce vmalloc space
      libnvdimm/pfn_dev: increase MAX_STRUCT_PAGE_SIZE
      kmsan: add KMSAN runtime core
      kmsan: disable instrumentation of unsupported common kernel code
      MAINTAINERS: add entry for KMSAN
      mm: kmsan: maintain KMSAN metadata for page operations
      mm: kmsan: call KMSAN hooks from SLUB code
      kmsan: handle task creation and exiting
      init: kmsan: call KMSAN initialization routines
      instrumented.h: add KMSAN support
      kmsan: add iomap support
      input: libps2: mark data received in __ps2_command() as initialized
      dma: kmsan: unpoison DMA mappings
      virtio: kmsan: check/unpoison scatterlist in vring_map_one_sg()
      kmsan: handle memory sent to/from USB
      kmsan: add tests for KMSAN
      kmsan: disable strscpy() optimization under KMSAN
      crypto: kmsan: disable accelerated configs under KMSAN
      kmsan: disable physical page merging in biovec
      block: kmsan: skip bio block merging logic for KMSAN
      kcov: kmsan: unpoison area->list in kcov_remote_area_put()
      security: kmsan: fix interoperability with auto-initialization
      objtool: kmsan: list KMSAN API functions as uaccess-safe
      x86: kmsan: disable instrumentation of unsupported code
      x86: kmsan: skip shadow checks in __switch_to()
      x86: kmsan: handle open-coded assembly in lib/iomem.c
      x86: kmsan: use __msan_ string functions where possible.
      x86: kmsan: sync metadata pages on page fault
      x86: kasan: kmsan: support CONFIG_GENERIC_CSUM on x86, enable it for KASAN/KMSAN
      x86: fs: kmsan: disable CONFIG_DCACHE_WORD_ACCESS
      x86: kmsan: don't instrument stack walking functions
      entry: kmsan: introduce kmsan_unpoison_entry_regs()
      bpf: kmsan: initialize BPF registers with zeroes
      mm: fs: initialize fsdata passed to write_begin/write_end interface
      x86: kmsan: enable KMSAN builds for x86
      x86: kmsan: handle CPU entry area

Alexey Romanov (5):
      zsmalloc: zs_object_copy: add clarifying comment
      zsmalloc: remove unnecessary size_class NULL check
      zsmalloc: zs_object_copy: replace email link to doc
      zram: don't retry compress incompressible page
      zsmalloc: use correct types in _first_obj_offset functions

Alistair Popple (4):
      mm/gup.c: simplify and fix check_and_migrate_movable_pages() return codes
      mm/gup.c: don't pass gup_flags to check_and_migrate_movable_pages()
      mm/gup.c: refactor check_and_migrate_movable_pages()
      mm/migrate_device.c: fix a misleading and outdated comment

Andrew Morton (3):
      Merge branch 'mm-hotfixes-stable' into mm-stable
      mm/page_alloc.c: rename check_free_page() to free_page_is_bad()
      mm/page_alloc.c: document bulkfree_pcp_prepare() return value

Andrey Konovalov (36):
      kasan: check KASAN_NO_FREE_META in __kasan_metadata_size
      kasan: rename kasan_set_*_info to kasan_save_*_info
      kasan: move is_kmalloc check out of save_alloc_info
      kasan: split save_alloc_info implementations
      kasan: drop CONFIG_KASAN_TAGS_IDENTIFY
      kasan: introduce kasan_print_aux_stacks
      kasan: introduce kasan_get_alloc_track
      kasan: introduce kasan_init_object_meta
      kasan: clear metadata functions for tag-based modes
      kasan: move kasan_get_*_meta to generic.c
      kasan: introduce kasan_requires_meta
      kasan: introduce kasan_init_cache_meta
      kasan: drop CONFIG_KASAN_GENERIC check from kasan_init_cache_meta
      kasan: only define kasan_metadata_size for Generic mode
      kasan: only define kasan_never_merge for Generic mode
      kasan: only define metadata offsets for Generic mode
      kasan: only define metadata structs for Generic mode
      kasan: only define kasan_cache_create for Generic mode
      kasan: pass tagged pointers to kasan_save_alloc/free_info
      kasan: move kasan_get_alloc/free_track definitions
      kasan: cosmetic changes in report.c
      kasan: use virt_addr_valid in kasan_addr_to_page/slab
      kasan: use kasan_addr_to_slab in print_address_description
      kasan: make kasan_addr_to_page static
      kasan: simplify print_report
      kasan: introduce complete_report_info
      kasan: fill in cache and object in complete_report_info
      kasan: rework function arguments in report.c
      kasan: introduce kasan_complete_mode_report_info
      kasan: implement stack ring for tag-based modes
      kasan: support kasan.stacktrace for SW_TAGS
      kasan: dynamically allocate stack ring entries
      kasan: better identify bug types for tag-based modes
      kasan: add another use-after-free test
      kasan: move tests to mm/kasan/
      kasan: better invalid/double-free report header

Aneesh Kumar K.V (10):
      mm/demotion: add support for explicit memory tiers
      mm/demotion: move memory demotion related code
      mm/demotion: add hotplug callbacks to handle new numa node onlined
      mm/demotion/dax/kmem: set node's abstract distance to MEMTIER_DEFAULT_DAX_ADISTANCE
      mm/demotion: build demotion targets based on explicit memory tiers
      mm/demotion: add pg_data_t member to track node memory tier details
      mm/demotion: drop memtier from memtype
      mm/demotion: update node_is_toptier to work with memory tiers
      lib/nodemask: optimize node_random for nodemask with single NUMA node
      mm/demotion: expose memory tier details via sysfs

Axel Rasmussen (5):
      selftests: vm: add hugetlb_shared userfaultfd test to run_vmtests.sh
      userfaultfd: add /dev/userfaultfd for fine grained access control
      userfaultfd: selftests: modify selftest to use /dev/userfaultfd
      userfaultfd: update documentation to describe /dev/userfaultfd
      selftests: vm: add /dev/userfaultfd test cases to run_vmtests.sh

Baolin Wang (3):
      mm/damon: validate if the pmd entry is present before accessing
      mm/damon: replace pmd_huge() with pmd_trans_huge() for THP
      mm: migrate: do not retry 10 times for the subpages of fail-to-migrate THP

Bui Quang Minh (1):
      mm: skip retry when new limit is not below old one in page_counter_set_max

Charan Teja Kalla (3):
      mm/page_ext: remove unused variable in offline_page_ext
      mm/cma_debug: show complete cma name in debugfs directories
      mm: fix use-after free of page_ext after race with memory-offline

Cheng Li (1):
      mm: use nth_page instead of mem_map_offset mem_map_next

Chih-En Lin (1):
      mm/page_table_check: fix typos

Christoph Hellwig (1):
      mm/swap: remove the end_write_func argument to __swap_writepage

Christophe JAILLET (1):
      mm/mremap_pages: save a few cycles in get_dev_pagemap()

David Heidelberg (1):
      mm: remove EXPERIMENTAL flag for zswap

David Hildenbrand (4):
      mm: fix PageAnonExclusive clearing racing with concurrent RCU GUP-fast
      mm/gup: replace FOLL_NUMA by gup_can_follow_protnone()
      mm/gup: use gup_can_follow_protnone() also in GUP-fast
      mm: fixup documentation regarding pte_numa() and PROT_NUMA

Dawei Li (1):
      mm/damon: improve damon_new_region strategy

Dmitry Vyukov (1):
      x86: add missing include to sparsemem.h

Feng Tang (1):
      mm/hugetlb: add dedicated func to get 'allowed' nodemask for current process

Gaosheng Cui (1):
      mm: remove unused inline functions from include/linux/mm_inline.h

Gerald Schaefer (1):
      s390/hugetlb: switch to generic version of follow_huge_pud()

Haiyue Wang (2):
      mm: migration: fix the FOLL_GET failure on following huge page
      mm: fix the handling Non-LRU pages returned by follow_page

Huang Ying (10):
      memory tiering: hot page selection with hint page fault latency
      memory tiering: rate limit NUMA migration throughput
      memory tiering: adjust hot threshold automatically
      migrate: fix syscall move_pages() return value for failure
      migrate_pages(): remove unnecessary list_safe_reset_next()
      migrate_pages(): fix THP failure counting for -ENOMEM
      migrate_pages(): fix failure counting for THP subpages retrying
      migrate_pages(): fix failure counting for THP on -ENOSYS
      migrate_pages(): fix failure counting for THP splitting
      migrate_pages(): fix failure counting for retry

Imran Khan (1):
      kfence: add sysfs interface to disable kfence for selected slabs.

Jagdish Gediya (1):
      mm/demotion: demote pages according to allocation fallback order

Jakub Matěna (2):
      mm: refactor of vma_merge()
      mm: add merging after mremap resize

Jeff Layton (1):
      tmpfs: add support for an i_version counter

Johannes Weiner (4):
      mm: memcontrol: don't allocate cgroup swap arrays when memcg is disabled
      mm: memcontrol: deprecate swapaccounting=0 mode
      mm: memcontrol: use do_memsw_account() in a few more places
      mm: memcontrol: drop dead CONFIG_MEMCG_SWAP config symbol

Kairui Song (3):
      mm/util: reduce stack usage of folio_mapcount
      mm: memcontrol: use memcg_kmem_enabled in count_objcg_event
      mm: memcontrol: make cgroup_memory_noswap a static key

Kaixu Xia (15):
      mm/damon/core: simplify the parameter passing for region split operation
      mm/damon: simplify the parameter passing for 'check_accesses'
      mm/damon/vaddr: remove comparison between mm and last_mm when checking region accesses
      mm/damon: get the hotness from damon_hot_score() in damon_pageout_score()
      mm/damon/sysfs: simplify the judgement whether kdamonds are busy
      mm/damon/core: iterate the regions list from current point in damon_set_regions()
      mm/damon/vaddr: add a comment for 'default' case in damon_va_apply_scheme()
      mm/damon/sysfs: use the wrapper directly to check if the kdamond is running
      mm/damon: simplify the parameter passing for 'prepare_access_checks'
      mm/damon/sysfs: simplify the variable 'pid' assignment operation
      mm/damon/core: simplify the kdamond stop mechanism by removing 'done'
      mm/damon: use 'struct damon_target *' instead of 'void *' in target_valid()
      mm/damon: return void from damon_set_schemes()
      mm/damon: rename damon_pageout_score() to damon_cold_score()
      mm/damon: deduplicate damon_{reclaim,lru_sort}_apply_parameters()

Kassey Li (1):
      mm/page_owner.c: add llseek for page_owner

Ke Sun (1):
      mm/filemap: make folio_put_wait_locked static

Kefeng Wang (12):
      mm: memory-failure: cleanup try_to_split_thp_page()
      mm/util.c: add warning if __vm_enough_memory fails
      mm: kill find_min_pfn_with_active_regions()
      mm: memory-failure: kill soft_offline_free_page()
      mm: memory-failure: kill __soft_offline_page()
      mm: kill is_memblock_offlined()
      mm: fix null-ptr-deref in kswapd_is_running()
      mm: remove BUG_ON() in __isolate_free_page()
      mm: reuse pageblock_start/end_pfn() macro
      mm: add pageblock_align() macro
      mm: add pageblock_aligned() macro
      memblock tests: add new pageblock related macro

Kenneth Lee (1):
      mm/damon/dbgfs: use kmalloc for allocating only one element

Li Zhe (1):
      page_ext: introduce boot parameter 'early_page_ext'

Li kunyu (1):
      page_alloc: remove inactive initialization

Li zeming (1):
      mm/hugetlb.c: remove unnecessary initialization of local `err'

Liam Howlett (1):
      mm/mlock: drop dead code in count_mm_mlocked_page_nr()

Liam R. Howlett (45):
      Maple Tree: add new data structure
      radix tree test suite: add pr_err define
      radix tree test suite: add kmem_cache_set_non_kernel()
      radix tree test suite: add allocation counts and size to kmem_cache
      radix tree test suite: add support for slab bulk APIs
      radix tree test suite: add lockdep_is_held to header
      lib/test_maple_tree: add testing for maple tree
      mm: start tracking VMAs with maple tree
      mm/mmap: use the maple tree in find_vma() instead of the rbtree.
      mm/mmap: use the maple tree for find_vma_prev() instead of the rbtree
      mm/mmap: use maple tree for unmapped_area{_topdown}
      kernel/fork: use maple tree for dup_mmap() during forking
      damon: convert __damon_va_three_regions to use the VMA iterator
      mm: remove rb tree.
      mmap: change zeroing of maple tree in __vma_adjust()
      xen: use vma_lookup() in privcmd_ioctl_mmap()
      mm: optimize find_exact_vma() to use vma_lookup()
      mm/khugepaged: optimize collapse_pte_mapped_thp() by using vma_lookup()
      mm/mmap: change do_brk_flags() to expand existing VMA and add do_brk_munmap()
      mm: use maple tree operations for find_vma_intersection()
      mm/mmap: use advanced maple tree API for mmap_region()
      mm: remove vmacache
      mm: convert vma_lookup() to use mtree_load()
      mm/mmap: move mmap_region() below do_munmap()
      mm/mmap: reorganize munmap to use maple states
      mm/mmap: change do_brk_munmap() to use do_mas_align_munmap()
      arm64: Change elfcore for_each_mte_vma() to use VMA iterator
      fs/proc/base: use the vma iterators in place of linked list
      userfaultfd: use maple tree iterator to iterate VMAs
      ipc/shm: use VMA iterator instead of linked list
      bpf: remove VMA linked list
      mm/gup: use maple tree navigation instead of linked list
      mm/madvise: use vma_find() instead of vma linked list
      mm/memcontrol: stop using mm->highest_vm_end
      mm/mempolicy: use vma iterator & maple state instead of vma linked list
      mm/mprotect: use maple tree navigation instead of VMA linked list
      mm/mremap: use vma_find_intersection() instead of vma linked list
      mm/msync: use vma_find() instead of vma linked list
      mm/oom_kill: use vma iterators instead of vma linked list
      mm/swapfile: use vma iterator instead of vma linked list
      riscv: use vma iterator for vdso
      mm/vmscan: use vma iterator instead of vm_next
      mm: remove the vma linked list
      mm/mmap: drop range_has_overlap() function
      mm/mmap.c: pass in mapping to __vma_link_file()

Liu Shixin (8):
      mm/thp: simplify has_transparent_hugepage by using IS_BUILTIN
      mm/thp: remove redundant CONFIG_TRANSPARENT_HUGEPAGE
      mm/kmemleak: make create_object return void
      mm/shuffle: convert module_param_call to module_param_cb
      mm: kfence: convert to DEFINE_SEQ_ATTRIBUTE
      mm/huge_memory: prevent THP_ZERO_PAGE_ALLOC increased twice
      mm/memcontrol: use kstrtobool for swapaccount param parsing
      mm: hugetlb: fix UAF in hugetlb_handle_userfault

Matthew Wilcox (1):
      mm/vmalloc.c: support HIGHMEM pages in vmap_pages_range_noflush()

Matthew Wilcox (Oracle) (82):
      mm: add VMA iterator
      mmap: use the VMA iterator in count_vma_pages_range()
      proc: remove VMA rbtree use from nommu
      arm64: remove mmap linked list from vdso
      parisc: remove mmap linked list from cache handling
      powerpc: remove mmap linked list walks
      s390: remove vma linked list walks
      x86: remove vma linked list walks
      xtensa: remove vma linked list walks
      cxl: remove vma linked list walk
      optee: remove vma linked list walk
      um: remove vma linked list walk
      coredump: remove vma linked list walk
      exec: use VMA iterator instead of linked list
      fs/proc/task_mmu: stop using linked list and highest_vm_end
      acct: use VMA iterator instead of linked list
      perf: use VMA iterator
      sched: use maple tree iterator to walk VMAs
      fork: use VMA iterator
      mm/khugepaged: stop using vma linked list
      mm/ksm: use vma iterators instead of vma linked list
      mm/mlock: use vma iterator and maple state instead of vma linked list
      mm/pagewalk: use vma_find() instead of vma linked list
      i915: use the VMA iterator
      nommu: remove uses of VMA linked list
      mm/vmscan: fix a lot of comments
      mm: add the first tail page to struct folio
      mm: reimplement folio_order() and folio_nr_pages()
      mm: add split_folio()
      mm: add folio_add_lru_vma()
      shmem: convert shmem_writepage() to use a folio throughout
      shmem: convert shmem_delete_from_page_cache() to take a folio
      shmem: convert shmem_replace_page() to use folios throughout
      mm/swapfile: remove page_swapcount()
      mm/swapfile: convert try_to_free_swap() to folio_free_swap()
      mm/swap: convert __read_swap_cache_async() to use a folio
      mm/swap: convert add_to_swap_cache() to take a folio
      mm/swap: convert put_swap_page() to put_swap_folio()
      mm: convert do_swap_page() to use a folio
      mm: convert do_swap_page()'s swapcache variable to a folio
      memcg: convert mem_cgroup_swapin_charge_page() to mem_cgroup_swapin_charge_folio()
      shmem: convert shmem_mfill_atomic_pte() to use a folio
      shmem: convert shmem_replace_page() to shmem_replace_folio()
      swap: add swap_cache_get_folio()
      shmem: eliminate struct page from shmem_swapin_folio()
      shmem: convert shmem_getpage_gfp() to shmem_get_folio_gfp()
      shmem: convert shmem_fault() to use shmem_get_folio_gfp()
      shmem: convert shmem_read_mapping_page_gfp() to use shmem_get_folio_gfp()
      shmem: add shmem_get_folio()
      shmem: convert shmem_get_partial_folio() to use shmem_get_folio()
      shmem: convert shmem_write_begin() to use shmem_get_folio()
      shmem: convert shmem_file_read_iter() to use shmem_get_folio()
      shmem: convert shmem_fallocate() to use a folio
      shmem: convert shmem_symlink() to use a folio
      shmem: convert shmem_get_link() to use a folio
      khugepaged: call shmem_get_folio()
      userfaultfd: convert mcontinue_atomic_pte() to use a folio
      shmem: remove shmem_getpage()
      swapfile: convert try_to_unuse() to use a folio
      swapfile: convert __try_to_reclaim_swap() to use a folio
      swapfile: convert unuse_pte_range() to use a folio
      mm: convert do_swap_page() to use swap_cache_get_folio()
      mm: remove lookup_swap_cache()
      swap_state: convert free_swap_cache() to use a folio
      swap: convert swap_writepage() to use a folio
      mm: convert do_wp_page() to use a folio
      huge_memory: convert do_huge_pmd_wp_page() to use a folio
      madvise: convert madvise_free_pte_range() to use a folio
      uprobes: use folios more widely in __replace_page()
      ksm: use a folio in replace_page()
      mm: convert do_swap_page() to use folio_free_swap()
      memcg: convert mem_cgroup_swap_full() to take a folio
      mm: remove try_to_free_swap()
      rmap: convert page_move_anon_rmap() to use a folio
      migrate: convert __unmap_and_move() to use folios
      migrate: convert unmap_and_move_huge_page() to use folios
      huge_memory: convert split_huge_page_to_list() to use a folio
      huge_memory: convert unmap_page() to unmap_folio()
      mm: convert page_get_anon_vma() to folio_get_anon_vma()
      rmap: remove page_unlock_anon_vma_read()
      uprobes: use new_folio in __replace_page()
      mm: convert lock_page_or_retry() to folio_lock_or_retry()

Matthias Goergens (1):
      hugetlb_encode.h: fix undefined behaviour (34 << 26)

Miaohe Lin (50):
      hugetlb_cgroup: remove unneeded nr_pages > 0 check
      hugetlb_cgroup: hugetlbfs: use helper macro SZ_1{K,M,G}
      hugetlb_cgroup: remove unneeded return value
      hugetlb_cgroup: use helper macro NUMA_NO_NODE
      hugetlb_cgroup: use helper for_each_hstate and hstate_index
      mm/hugetlb: fix incorrect update of max_huge_pages
      mm/hugetlb: fix WARN_ON(!kobj) in sysfs_create_group()
      mm/hugetlb: fix missing call to restore_reserve_on_error()
      mm: hugetlb_vmemmap: add missing smp_wmb() before set_pte_at()
      mm/hugetlb: fix sysfs group leak in hugetlb_unregister_node()
      mm/hugetlb: make detecting shared pte more reliable
      mm, hwpoison: fix page refcnt leaking in try_memory_failure_hugetlb()
      mm, hwpoison: fix page refcnt leaking in unpoison_memory()
      mm, hwpoison: fix extra put_page() in soft_offline_page()
      mm, hwpoison: fix possible use-after-free in mf_dax_kill_procs()
      mm, hwpoison: kill procs if unmap fails
      mm, hwpoison: avoid trying to unpoison reserved page
      hugetlb: make hugetlb_cma_check() static
      hugetlb: Use helper macro SZ_1K
      hugetlb: use LIST_HEAD() to define a list head
      hugetlb: use sizeof() to get the array size
      hugetlb: use helper {huge_pte|pmd}_lock()
      hugetlb: pass NULL to kobj_to_hstate() if nid is unused
      hugetlb: kill hugetlbfs_pagecache_page()
      hugetlb: add comment for subtle SetHPageVmemmapOptimized()
      hugetlb: remove meaningless BUG_ON(huge_pte_none())
      hugetlb: make hugetlb depends on SYSFS or SYSCTL
      mm, hwpoison: use ClearPageHWPoison() in memory_failure()
      mm, hwpoison: use __PageMovable() to detect non-lru movable pages
      mm, hwpoison: use num_poisoned_pages_sub() to decrease num_poisoned_pages
      mm, hwpoison: avoid unneeded page_mapped_in_vma() overhead in collect_procs_anon()
      mm, hwpoison: check PageTable() explicitly in hwpoison_user_mappings()
      mm, hwpoison: cleanup some obsolete comments
      writeback: remove unused macro DIRTY_FULL_SCOPE
      mm/page_alloc: ensure kswapd doesn't accidentally go to sleep
      mm/page_alloc: make zone_pcp_update() static
      mm: remove obsolete macro NR_PCP_ORDER_MASK and NR_PCP_ORDER_WIDTH
      mm/page_alloc: remove obsolete comment in zone_statistics()
      mm/page_alloc: add __init annotations to init_mem_debugging_and_hardening()
      mm/page_alloc: fix freeing static percpu memory
      mm: remove obsolete pgdat_is_empty()
      mm/page_alloc: add missing is_migrate_isolate() check in set_page_guard()
      mm/page_alloc: use local variable zone_idx directly
      mm, memory_hotplug: remove obsolete generic_free_nodedata()
      mm/page_alloc: make boot_nodestats static
      mm/page_alloc: use helper macro SZ_1{K,M}
      mm/page_alloc: init local variable buddy_pfn
      mm/page_alloc: use costly_order in WARN_ON_ONCE_GFP()
      mm/page_alloc: remove obsolete gfpflags_normal_context()
      mm/page_alloc: fix obsolete comment in deferred_pfn_valid()

Michal Hocko (1):
      mm: reduce noise in show_mem for lowmem allocations

Mika Penttilä (1):
      mm/hmm/test: use char dev with struct device to get device node

Mike Kravetz (13):
      hugetlbfs: revert use i_mmap_rwsem to address page fault/truncate race
      hugetlbfs: revert use i_mmap_rwsem for more pmd sharing synchronization
      hugetlb: rename remove_huge_page to hugetlb_delete_from_page_cache
      hugetlb: create remove_inode_single_folio to remove single file folio
      hugetlb: rename vma_shareable() and refactor code
      hugetlb: add vma based lock for pmd sharing
      hugetlb: create hugetlb_unmap_file_folio to unmap single file folio
      hugetlb: use new vma_lock for pmd sharing synchronization
      hugetlb: clean up code checking for fault/truncation races
      hugetlb: freeze allocated pages before creating hugetlb pages
      hugetlb: fix vma lock handling during split vma and range unmapping
      hugetlb: take hugetlb vma_lock when clearing vma_lock->vma pointer
      hugetlb: allocate vma lock for all sharable vmas

Muchun Song (3):
      mm: hugetlb_vmemmap: simplify reset_struct_pages()
      mm: hugetlb: simplify per-node sysfs creation and removal
      mm: hugetlb: eliminate memory-less nodes handling

Peter Collingbourne (1):
      mm: add more BUILD_BUG_ONs to gfp_migratetype()

Peter Xu (7):
      mm/x86: use SWP_TYPE_BITS in 3-level swap macros
      mm/swap: comment all the ifdef in swapops.h
      mm/swap: add swp_offset_pfn() to fetch PFN from swap entry
      mm/thp: carry over dirty bit when thp splits on pmd
      mm: remember young/dirty bit for page migrations
      mm/swap: cache maximum swapfile size when init swap
      mm/swap: cache swap migration A/D bits support

Qi Zheng (8):
      mm: thp: remove redundant pgtable check in set_huge_zero_page()
      mm: introduce common struct mm_slot
      mm: thp: convert to use common struct mm_slot
      ksm: remove redundant declarations in ksm.h
      ksm: add the ksm prefix to the names of the ksm private structures
      ksm: convert ksm_mm_slot.mm_list to ksm_mm_slot.mm_node
      ksm: convert ksm_mm_slot.link to ksm_mm_slot.hash
      ksm: convert to use common struct mm_slot

Ran Xiaokai (1):
      mm/page_alloc: update comments for rmqueue()

Rik van Riel (1):
      mm: align larger anonymous mappings on THP boundaries

Rolf Eike Beer (2):
      mm: pagewalk: fix documentation of PTE hole handling
      mm: pagewalk: add api documentation for walk_page_range_novma()

SeongJae Park (29):
      selftest/damon: add a test for duplicate context dirs creation
      mm/damon/core: avoid holes in newly set monitoring target ranges
      mm/damon/core-test: test damon_set_regions
      Docs/admin-guide/mm/damon: rename the title of the document
      mm/damon/Kconfig: notify debugfs deprecation plan
      Docs/admin-guide/mm/damon/start: mention the dependency as sysfs instead of debugfs
      Docs/admin-guide/mm/damon/usage: note DAMON debugfs interface deprecation plan
      mm/damon/paddr: make supported DAMOS actions of paddr clear
      mm/damon/paddr: deduplicate damon_pa_{mark_accessed,deactivate_pages}()
      mm/damon/core: copy struct-to-struct instead of field-to-field in damon_new_scheme()
      mm/damon/core: factor out 'damos_quota' private fileds initialization
      mm/damon/core: use a dedicated struct for monitoring attributes
      mm/damon/core: reduce parameters for damon_set_attrs()
      mm/damon/reclaim: use 'struct damon_attrs' for storing parameters for it
      mm/damon/lru_sort: use 'struct damon_attrs' for storing parameters for it
      mm/damon: implement a monitoring attributes module parameters generator macro
      mm/damon/lru_sort: use monitoring attributes parameters generaotr macro
      mm/damon/reclaim: use monitoring attributes parameters generator macro
      mm/damon/modules-common: implement a watermarks module parameters generator macro
      mm/damon/lru_sort: use watermarks parameters generator macro
      mm/damon/reclaim: use watermarks parameters generator macro
      mm/damon/modules-common: implement a stats parameters generator macro
      mm/damon/reclaim: use stat parameters generator
      mm/damon/lru_sort: use stat generator
      mm/damon/modules-common: implement a damos quota params generator
      mm/damon/modules-common: implement damos time quota params generator
      mm/damon/reclaim: use the quota params generator macro
      mm/damon/lru_sort: use quotas param generator
      mm/damon/lru_sort: deduplicate hot/cold schemes generators

Sergey Senozhatsky (3):
      drivers/block/zram/zram_drv.c: do not keep dangling zcomp pointer after zram reset
      zram: do not waste zram_table_entry flags bits
      zram: keep comments within 80-columns limit

Shakeel Butt (7):
      mm: page_counter: remove unneeded atomic ops for low/min
      mm: page_counter: rearrange struct page_counter fields
      memcg: increase MEMCG_CHARGE_BATCH to 64
      mm: deduplicate cacheline padding code
      memcg: extract memcg_vmstats from struct mem_cgroup
      memcg: rearrange code
      memcg: reduce size of memcg vmstats structures

Shaoqin Huang (1):
      mm/filemap.c: convert page_endio() to use a folio

Song Liu (1):
      mm/vmalloc: extend find_vmap_lowest_match_check with extra arguments

Suren Baghdasaryan (2):
      mm: drop oom code from exit_mmap
      mm: delete unused MMF_OOM_VICTIM flag

Tarun Sahu (2):
      Kselftests: remove support of libhugetlbfs from kselftests
      selftest: vm: remove deleted local_config.* from .gitignore

Vishal Moola (Oracle) (8):
      filemap: add filemap_get_folios_contig()
      btrfs: convert __process_pages_contig() to use filemap_get_folios_contig()
      btrfs: convert end_compressed_writeback() to use filemap_get_folios()
      btrfs: convert process_page_range() to use filemap_get_folios_contig()
      nilfs2: convert nilfs_find_uncommited_extent() to use filemap_get_folios_contig()
      ramfs: convert ramfs_nommu_get_unmapped_area() to use filemap_get_folios_contig()
      filemap: remove find_get_pages_contig()
      filemap: convert filemap_range_has_writeback() to use folios

XU pengfei (1):
      mm/hugetlb: remove unnecessary 'NULL' values from pointer

Xin Hao (8):
      mm/damon: simplify damon_ctx check in damon_sysfs_before_terminate
      mm/damon: remove duplicate get_monitoring_region() definitions
      mm/damon/sysfs: change few functions execute order
      mm/damon: simplify scheme create in damon_lru_sort_apply_parameters
      mm/damon/sysfs: avoid call damon_target_has_pid() repeatedly
      mm/damon: simplify scheme create in lru_sort.c
      mm/damon/sysfs: return 'err' value when call kstrtoul() failed
      mm/hugetlb: add available_huge_pages() func

Xiu Jianfeng (4):
      mm/hwpoison: add __init/__exit annotations to module init/exit funcs
      mm/rodata_test: use PAGE_ALIGNED() helper
      mm/secretmem: add __init annotation to secretmem_init()
      mm/secretmem: remove reduntant return value

Yajun Deng (1):
      mm/damon: introduce struct damos_access_pattern

Yang Shi (3):
      mm: khugepaged: don't carry huge page to the next loop for !CONFIG_NUMA
      mm: memcg: export workingset refault stats for cgroup v1
      mm: MADV_COLLAPSE: refetch vm_end after reacquiring mmap_lock

Yang Yang (5):
      mm/vmscan: define macros for refaults in struct lruvec
      mm/vmscan: make the annotations of refaults code at the right place
      filemap: make the accounting of thrashing more consistent
      delayacct: support re-entrance detection of thrashing accounting
      mm/page_io: count submission time as thrashing delay for delayacct

Yang Yingliang (2):
      mm/damon/reclaim: change damon_reclaim_wmarks to static
      mm/damon/lru_sort: change damon_lru_sort_wmarks to static

Yin Fengwei (1):
      mm: release private data before split THP

Yixuan Cao (1):
      tools/vm/page_owner_sort: fix -f option

Yu Zhao (16):
      mm: x86, arm64: add arch_has_hw_pte_young()
      mm: x86: add CONFIG_ARCH_HAS_NONLEAF_PMD_YOUNG
      mm/vmscan.c: refactor shrink_node()
      Revert "include/linux/mm_inline.h: fold __update_lru_size() into its sole caller"
      mm: multi-gen LRU: groundwork
      mm: multi-gen LRU: minimal implementation
      mm: multi-gen LRU: exploit locality in rmap
      mm: multi-gen LRU: support page table walks
      mm: multi-gen LRU: optimize multiple memcgs
      mm: multi-gen LRU: kill switch
      mm: multi-gen LRU: thrashing prevention
      mm: multi-gen LRU: debugfs interface
      mm: multi-gen LRU: admin guide
      mm: multi-gen LRU: design doc
      mm/mglru: don't sync disk for each aging cycle
      mglru: mm/vmscan.c: fix imprecise comments

Zach O'Keefe (27):
      mm/khugepaged: add struct collapse_control
      mm/khugepaged: dedup and simplify hugepage alloc and charging
      mm/khugepaged: propagate enum scan_result codes back to callers
      mm/khugepaged: add flag to predicate khugepaged-only behavior
      mm/thp: add flag to enforce sysfs THP in hugepage_vma_check()
      mm/khugepaged: record SCAN_PMD_MAPPED when scan_pmd() finds hugepage
      mm/madvise: introduce MADV_COLLAPSE sync hugepage collapse
      mm/khugepaged: rename prefix of shared collapse functions
      mm/madvise: add MADV_COLLAPSE to process_madvise()
      selftests/vm: modularize collapse selftests
      selftests/vm: dedup hugepage allocation logic
      selftests/vm: add MADV_COLLAPSE collapse context to selftests
      selftests/vm: add selftest to verify recollapse of THPs
      selftests/vm: add selftest to verify multi THP collapse
      mm/khugepaged: check compound_order() in collapse_pte_mapped_thp()
      mm/madvise: MADV_COLLAPSE return EAGAIN when page cannot be isolated
      selftests/vm: retry on EAGAIN for MADV_COLLAPSE selftest
      mm/shmem: add flag to enforce shmem THP in hugepage_vma_check()
      mm/khugepaged: attempt to map file/shmem-backed pte-mapped THPs by pmds
      mm/madvise: add file and shmem support to MADV_COLLAPSE
      mm/khugepaged: add tracepoint to hpage_collapse_scan_file()
      selftests/vm: dedup THP helpers
      selftests/vm: modularize thp collapse memory operations
      selftests/vm: add thp collapse file and tmpfs testing
      selftests/vm: add thp collapse shmem testing
      selftests/vm: add file/shmem MADV_COLLAPSE selftest for cleared pmd
      selftests/vm: add selftest for MADV_COLLAPSE of uffd-minor memory

Zhang Yi (14):
      fs/buffer: remove __breadahead_gfp()
      fs/buffer: add some new buffer read helpers
      fs/buffer: replace ll_rw_block()
      gfs2: replace ll_rw_block()
      isofs: replace ll_rw_block()
      jbd2: replace ll_rw_block()
      ntfs3: replace ll_rw_block()
      ocfs2: replace ll_rw_block()
      reiserfs: replace ll_rw_block()
      udf: replace ll_rw_block()
      ufs: replace ll_rw_block()
      fs/buffer: remove ll_rw_block() helper
      ext2: replace bh_submit_read() helper with bh_read()
      fs/buffer: remove bh_submit_read() helper

Zhenhua Huang (1):
      mm/page_owner.c: remove redundant drain_all_pages

Zi Yan (1):
      arch: mm: rename FORCE_MAX_ZONEORDER to ARCH_FORCE_MAX_ORDER

xu xin (2):
      ksm: count allocated ksm rmap_items for each process
      ksm: add profit monitoring documentation

xupanda (1):
      mm: memcontrol: fix a typo in comment

ye xingchen (1):
      mm: backing-dev: Remove the unneeded result variable

ze zuo (1):
      mm/mempolicy: use PAGE_ALIGN instead of open-coding it

zezuo (1):
      mm/page_alloc.c: delete a redundant parameter of rmqueue_pcplist

 .../ABI/testing/sysfs-kernel-mm-memory-tiers       |    25 +
 Documentation/accounting/delay-accounting.rst      |     2 +-
 Documentation/admin-guide/cgroup-v1/memory.rst     |     4 +-
 Documentation/admin-guide/kernel-parameters.txt    |    14 +-
 Documentation/admin-guide/mm/cma_debugfs.rst       |    10 +-
 Documentation/admin-guide/mm/damon/index.rst       |     6 +-
 Documentation/admin-guide/mm/damon/start.rst       |    13 +-
 Documentation/admin-guide/mm/damon/usage.rst       |     5 +
 Documentation/admin-guide/mm/index.rst             |     1 +
 Documentation/admin-guide/mm/ksm.rst               |    36 +
 Documentation/admin-guide/mm/multigen_lru.rst      |   162 +
 Documentation/admin-guide/mm/transhuge.rst         |    16 +-
 Documentation/admin-guide/mm/userfaultfd.rst       |    41 +-
 Documentation/admin-guide/sysctl/kernel.rst        |    11 +
 Documentation/admin-guide/sysctl/vm.rst            |     3 +
 Documentation/core-api/index.rst                   |     1 +
 Documentation/core-api/maple_tree.rst              |   217 +
 Documentation/core-api/mm-api.rst                  |     3 -
 Documentation/dev-tools/index.rst                  |     1 +
 Documentation/dev-tools/kasan.rst                  |    17 +-
 Documentation/dev-tools/kmsan.rst                  |   427 +
 Documentation/mm/index.rst                         |     1 +
 Documentation/mm/ksm.rst                           |     2 +-
 Documentation/mm/multigen_lru.rst                  |   159 +
 Documentation/mm/page_owner.rst                    |     5 +
 MAINTAINERS                                        |    27 +-
 Makefile                                           |     1 +
 arch/Kconfig                                       |     8 +
 arch/alpha/include/uapi/asm/mman.h                 |     2 +
 arch/arc/Kconfig                                   |     2 +-
 arch/arm/Kconfig                                   |     2 +-
 arch/arm/configs/imx_v6_v7_defconfig               |     2 +-
 arch/arm/configs/milbeaut_m10v_defconfig           |     2 +-
 arch/arm/configs/oxnas_v6_defconfig                |     2 +-
 arch/arm/configs/pxa_defconfig                     |     2 +-
 arch/arm/configs/sama7_defconfig                   |     2 +-
 arch/arm/configs/sp7021_defconfig                  |     2 +-
 arch/arm64/Kconfig                                 |     2 +-
 arch/arm64/include/asm/pgtable.h                   |    15 +-
 arch/arm64/kernel/elfcore.c                        |    16 +-
 arch/arm64/kernel/vdso.c                           |     3 +-
 arch/arm64/mm/hugetlbpage.c                        |     2 +-
 arch/csky/Kconfig                                  |     2 +-
 arch/ia64/Kconfig                                  |     2 +-
 arch/ia64/include/asm/sparsemem.h                  |     6 +-
 arch/loongarch/Kconfig                             |     2 +-
 arch/m68k/Kconfig.cpu                              |     2 +-
 arch/mips/Kconfig                                  |     2 +-
 arch/mips/configs/db1xxx_defconfig                 |     1 -
 arch/mips/configs/generic_defconfig                |     1 -
 arch/mips/include/uapi/asm/mman.h                  |     2 +
 arch/nios2/Kconfig                                 |     2 +-
 arch/parisc/include/uapi/asm/mman.h                |     2 +
 arch/parisc/kernel/cache.c                         |     9 +-
 arch/powerpc/Kconfig                               |     2 +-
 arch/powerpc/configs/85xx/ge_imp3a_defconfig       |     2 +-
 arch/powerpc/configs/fsl-emb-nonhw.config          |     2 +-
 arch/powerpc/configs/powernv_defconfig             |     1 -
 arch/powerpc/configs/pseries_defconfig             |     1 -
 arch/powerpc/kernel/vdso.c                         |     6 +-
 arch/powerpc/mm/book3s32/tlb.c                     |    11 +-
 arch/powerpc/mm/book3s64/subpage_prot.c            |    13 +-
 arch/riscv/kernel/vdso.c                           |     3 +-
 arch/s390/kernel/vdso.c                            |     3 +-
 arch/s390/lib/uaccess.c                            |     3 +-
 arch/s390/mm/gmap.c                                |     6 +-
 arch/s390/mm/hugetlbpage.c                         |    10 -
 arch/sh/configs/ecovec24_defconfig                 |     2 +-
 arch/sh/configs/sdk7786_defconfig                  |     1 -
 arch/sh/configs/urquell_defconfig                  |     1 -
 arch/sh/mm/Kconfig                                 |     2 +-
 arch/sparc/Kconfig                                 |     2 +-
 arch/um/kernel/tlb.c                               |    14 +-
 arch/x86/Kconfig                                   |    10 +-
 arch/x86/boot/Makefile                             |     1 +
 arch/x86/boot/compressed/Makefile                  |     1 +
 arch/x86/entry/vdso/Makefile                       |     3 +
 arch/x86/entry/vdso/vma.c                          |     9 +-
 arch/x86/include/asm/checksum.h                    |    16 +-
 arch/x86/include/asm/kmsan.h                       |    87 +
 arch/x86/include/asm/page_64.h                     |     7 +
 arch/x86/include/asm/pgtable-3level.h              |     8 +-
 arch/x86/include/asm/pgtable.h                     |     9 +-
 arch/x86/include/asm/pgtable_64_types.h            |    47 +-
 arch/x86/include/asm/sparsemem.h                   |     2 +
 arch/x86/include/asm/string_64.h                   |    23 +-
 arch/x86/include/asm/uaccess.h                     |    22 +-
 arch/x86/kernel/Makefile                           |     2 +
 arch/x86/kernel/cpu/Makefile                       |     1 +
 arch/x86/kernel/dumpstack.c                        |     6 +
 arch/x86/kernel/process_64.c                       |     1 +
 arch/x86/kernel/tboot.c                            |     2 +-
 arch/x86/kernel/unwind_frame.c                     |    11 +
 arch/x86/lib/Makefile                              |     2 +
 arch/x86/lib/iomem.c                               |     5 +
 arch/x86/mm/Makefile                               |     5 +
 arch/x86/mm/fault.c                                |    23 +-
 arch/x86/mm/init.c                                 |     2 +-
 arch/x86/mm/init_64.c                              |     2 +-
 arch/x86/mm/ioremap.c                              |     3 +
 arch/x86/mm/kmsan_shadow.c                         |    20 +
 arch/x86/mm/pgtable.c                              |     5 +-
 arch/x86/realmode/rm/Makefile                      |     1 +
 arch/xtensa/Kconfig                                |     2 +-
 arch/xtensa/include/uapi/asm/mman.h                |     2 +
 arch/xtensa/kernel/syscall.c                       |    18 +-
 block/bio.c                                        |     2 +
 block/blk.h                                        |     7 +
 crypto/Kconfig                                     |    30 +
 drivers/base/memory.c                              |     6 -
 drivers/base/node.c                                |   141 +-
 drivers/block/zram/zram_drv.c                      |    38 +-
 drivers/block/zram/zram_drv.h                      |    15 +-
 drivers/dax/kmem.c                                 |    42 +-
 drivers/firmware/efi/efi.c                         |     2 +-
 drivers/firmware/efi/libstub/Makefile              |     1 +
 drivers/gpu/drm/i915/gem/i915_gem_userptr.c        |    14 +-
 drivers/input/serio/libps2.c                       |     5 +-
 drivers/misc/cxl/fault.c                           |    45 +-
 drivers/net/Kconfig                                |     1 +
 drivers/nvdimm/nd.h                                |     2 +-
 drivers/nvdimm/pfn_devs.c                          |     2 +-
 drivers/tee/optee/call.c                           |    18 +-
 drivers/usb/core/urb.c                             |     2 +
 drivers/virtio/virtio_ring.c                       |    10 +-
 drivers/xen/privcmd.c                              |     2 +-
 fs/Kconfig                                         |     1 +
 fs/btrfs/compression.c                             |    31 +-
 fs/btrfs/extent_io.c                               |    33 +-
 fs/btrfs/subpage.c                                 |     2 +-
 fs/btrfs/tests/extent-io-tests.c                   |    32 +-
 fs/buffer.c                                        |   158 +-
 fs/coredump.c                                      |    34 +-
 fs/exec.c                                          |    14 +-
 fs/ext2/balloc.c                                   |     7 +-
 fs/fuse/dev.c                                      |     3 +-
 fs/gfs2/meta_io.c                                  |     7 +-
 fs/gfs2/quota.c                                    |     8 +-
 fs/hugetlbfs/inode.c                               |   300 +-
 fs/isofs/compress.c                                |     2 +-
 fs/jbd2/journal.c                                  |    15 +-
 fs/jbd2/recovery.c                                 |    16 +-
 fs/namei.c                                         |     2 +-
 fs/nilfs2/page.c                                   |    45 +-
 fs/ntfs3/inode.c                                   |     7 +-
 fs/ocfs2/aops.c                                    |     2 +-
 fs/ocfs2/super.c                                   |     4 +-
 fs/posix_acl.c                                     |     3 +
 fs/proc/base.c                                     |    20 +-
 fs/proc/internal.h                                 |     2 +-
 fs/proc/task_mmu.c                                 |    96 +-
 fs/proc/task_nommu.c                               |    45 +-
 fs/ramfs/file-nommu.c                              |    50 +-
 fs/reiserfs/journal.c                              |    11 +-
 fs/reiserfs/stree.c                                |     4 +-
 fs/reiserfs/super.c                                |     4 +-
 fs/udf/dir.c                                       |     2 +-
 fs/udf/directory.c                                 |     2 +-
 fs/udf/inode.c                                     |     8 +-
 fs/ufs/balloc.c                                    |    12 +-
 fs/userfaultfd.c                                   |   133 +-
 include/asm-generic/cacheflush.h                   |    14 +-
 include/linux/buffer_head.h                        |    48 +-
 include/linux/cache.h                              |    13 +
 include/linux/cgroup.h                             |    15 +-
 include/linux/compiler-clang.h                     |    23 +
 include/linux/compiler-gcc.h                       |     6 +
 include/linux/compiler_types.h                     |     3 +-
 include/linux/damon.h                              |    86 +-
 include/linux/delayacct.h                          |    16 +-
 include/linux/fortify-string.h                     |     2 +
 include/linux/gfp.h                                |    26 +-
 include/linux/highmem.h                            |     3 +
 include/linux/huge_mm.h                            |    28 +-
 include/linux/hugetlb.h                            |    63 +-
 include/linux/hugetlb_cgroup.h                     |    19 +-
 include/linux/instrumented.h                       |    59 +-
 include/linux/kasan.h                              |    55 +-
 include/linux/khugepaged.h                         |    13 +-
 include/linux/kmsan-checks.h                       |    83 +
 include/linux/kmsan.h                              |   330 +
 include/linux/kmsan_types.h                        |    35 +
 include/linux/ksm.h                                |     3 -
 include/linux/maple_tree.h                         |   685 +
 include/linux/memcontrol.h                         |    99 +-
 include/linux/memory-tiers.h                       |   102 +
 include/linux/memory_hotplug.h                     |    30 +-
 include/linux/mempolicy.h                          |    13 +-
 include/linux/migrate.h                            |    15 -
 include/linux/mm.h                                 |   161 +-
 include/linux/mm_inline.h                          |   242 +-
 include/linux/mm_types.h                           |   178 +-
 include/linux/mm_types_task.h                      |    12 -
 include/linux/mmzone.h                             |   281 +-
 include/linux/node.h                               |    29 +-
 include/linux/nodemask.h                           |    16 +-
 include/linux/oom.h                                |    11 -
 include/linux/page-flags-layout.h                  |    16 +-
 include/linux/page-flags.h                         |     4 +-
 include/linux/page_counter.h                       |    26 +-
 include/linux/page_ext.h                           |    24 +-
 include/linux/page_idle.h                          |    34 +-
 include/linux/pageblock-flags.h                    |     4 +
 include/linux/pagemap.h                            |    14 +-
 include/linux/pagewalk.h                           |    10 +-
 include/linux/pgtable.h                            |    26 +-
 include/linux/rmap.h                               |    73 +-
 include/linux/sched.h                              |    14 +-
 include/linux/sched/coredump.h                     |     7 +-
 include/linux/sched/sysctl.h                       |     1 +
 include/linux/shmem_fs.h                           |    16 +-
 include/linux/slab.h                               |     8 +-
 include/linux/stackdepot.h                         |     8 +
 include/linux/swap.h                               |    41 +-
 include/linux/swap_cgroup.h                        |     4 +-
 include/linux/swapfile.h                           |     7 +-
 include/linux/swapops.h                            |   150 +-
 include/linux/uaccess.h                            |    19 +-
 include/linux/userfaultfd_k.h                      |     7 +-
 include/linux/vm_event_item.h                      |     4 -
 include/linux/vmacache.h                           |    28 -
 include/linux/vmstat.h                             |     6 -
 include/linux/writeback.h                          |     8 -
 include/trace/events/huge_memory.h                 |    37 +
 include/trace/events/maple_tree.h                  |   123 +
 include/trace/events/mmap.h                        |    73 +
 include/uapi/asm-generic/hugetlb_encode.h          |    26 +-
 include/uapi/asm-generic/mman-common.h             |     2 +
 include/uapi/linux/userfaultfd.h                   |     4 +
 init/Kconfig                                       |     5 -
 init/main.c                                        |    11 +-
 ipc/shm.c                                          |    21 +-
 kernel/Makefile                                    |     1 +
 kernel/acct.c                                      |    11 +-
 kernel/bounds.c                                    |     7 +
 kernel/bpf/core.c                                  |     2 +-
 kernel/bpf/task_iter.c                             |    10 +-
 kernel/cgroup/cgroup-internal.h                    |     1 -
 kernel/debug/debug_core.c                          |    12 -
 kernel/delayacct.c                                 |    13 +-
 kernel/dma/mapping.c                               |    10 +-
 kernel/entry/common.c                              |     5 +
 kernel/events/core.c                               |     3 +-
 kernel/events/uprobes.c                            |    39 +-
 kernel/exit.c                                      |     3 +
 kernel/fork.c                                      |    79 +-
 kernel/kcov.c                                      |     7 +
 kernel/locking/Makefile                            |     3 +-
 kernel/sched/core.c                                |    15 +
 kernel/sched/debug.c                               |     1 +
 kernel/sched/fair.c                                |   175 +-
 kernel/sched/sched.h                               |     1 +
 kernel/sysctl.c                                    |     8 +
 lib/Kconfig.debug                                  |    18 +-
 lib/Kconfig.kasan                                  |     8 -
 lib/Kconfig.kmsan                                  |    62 +
 lib/Makefile                                       |    10 +-
 lib/iomap.c                                        |    44 +
 lib/iov_iter.c                                     |     9 +-
 lib/maple_tree.c                                   |  7130 ++++
 lib/show_mem.c                                     |     4 +-
 lib/stackdepot.c                                   |    29 +-
 lib/string.c                                       |     8 +
 lib/test_hmm.c                                     |    13 +-
 lib/test_maple_tree.c                              | 38307 +++++++++++++++++++
 lib/usercopy.c                                     |     3 +-
 mm/Kconfig                                         |    34 +-
 mm/Makefile                                        |     8 +-
 mm/backing-dev.c                                   |     6 +-
 mm/cma_debug.c                                     |     5 +-
 mm/compaction.c                                    |    24 +-
 mm/damon/Kconfig                                   |     3 +
 mm/damon/core-test.h                               |    29 +-
 mm/damon/core.c                                    |   281 +-
 mm/damon/dbgfs.c                                   |    52 +-
 mm/damon/lru_sort.c                                |   380 +-
 mm/damon/modules-common.h                          |    46 +
 mm/damon/ops-common.c                              |    50 +-
 mm/damon/ops-common.h                              |     2 +-
 mm/damon/paddr.c                                   |    43 +-
 mm/damon/reclaim.c                                 |   289 +-
 mm/damon/sysfs.c                                   |   143 +-
 mm/damon/vaddr-test.h                              |    36 +-
 mm/damon/vaddr.c                                   |   102 +-
 mm/debug.c                                         |    14 +-
 mm/filemap.c                                       |   124 +-
 mm/folio-compat.c                                  |     6 +
 mm/gup.c                                           |   248 +-
 mm/hmm.c                                           |     2 +-
 mm/huge_memory.c                                   |   205 +-
 mm/hugetlb.c                                       |   792 +-
 mm/hugetlb_cgroup.c                                |    27 +-
 mm/hugetlb_vmemmap.c                               |    10 +-
 mm/hwpoison-inject.c                               |     4 +-
 mm/init-mm.c                                       |     4 +-
 mm/internal.h                                      |    48 +-
 mm/kasan/Makefile                                  |     8 +
 mm/kasan/common.c                                  |   177 +-
 mm/kasan/generic.c                                 |   154 +-
 mm/kasan/hw_tags.c                                 |    39 +-
 mm/kasan/kasan.h                                   |   171 +-
 lib/test_kasan.c => mm/kasan/kasan_test.c          |    26 +-
 .../kasan/kasan_test_module.c                      |     2 +-
 mm/kasan/report.c                                  |   138 +-
 mm/kasan/report_generic.c                          |    46 +-
 mm/kasan/report_tags.c                             |   123 +-
 mm/kasan/sw_tags.c                                 |     5 +-
 mm/kasan/tags.c                                    |   143 +-
 mm/kfence/core.c                                   |    22 +-
 mm/khugepaged.c                                    |  1168 +-
 mm/kmemleak.c                                      |    21 +-
 mm/kmsan/Makefile                                  |    28 +
 mm/kmsan/core.c                                    |   450 +
 mm/kmsan/hooks.c                                   |   384 +
 mm/kmsan/init.c                                    |   235 +
 mm/kmsan/instrumentation.c                         |   307 +
 mm/kmsan/kmsan.h                                   |   209 +
 mm/kmsan/kmsan_test.c                              |   581 +
 mm/kmsan/report.c                                  |   219 +
 mm/kmsan/shadow.c                                  |   298 +
 mm/ksm.c                                           |   375 +-
 mm/madvise.c                                       |    60 +-
 mm/memblock.c                                      |     6 +-
 mm/memcontrol.c                                    |   281 +-
 mm/memory-failure.c                                |   126 +-
 mm/memory-tiers.c                                  |   732 +
 mm/memory.c                                        |   274 +-
 mm/memory_hotplug.c                                |    11 +-
 mm/mempolicy.c                                     |    66 +-
 mm/memremap.c                                      |     2 +-
 mm/migrate.c                                       |   651 +-
 mm/migrate_device.c                                |    19 +-
 mm/mlock.c                                         |    37 +-
 mm/mm_init.c                                       |     6 +-
 mm/mm_slot.h                                       |    55 +
 mm/mmap.c                                          |  2259 +-
 mm/mmzone.c                                        |     2 +
 mm/mprotect.c                                      |    17 +-
 mm/mremap.c                                        |    41 +-
 mm/msync.c                                         |     2 +-
 mm/nommu.c                                         |   260 +-
 mm/oom_kill.c                                      |    11 +-
 mm/page_alloc.c                                    |   196 +-
 mm/page_counter.c                                  |    15 +-
 mm/page_ext.c                                      |   117 +-
 mm/page_io.c                                       |    43 +-
 mm/page_isolation.c                                |    17 +-
 mm/page_owner.c                                    |   103 +-
 mm/page_table_check.c                              |    14 +-
 mm/page_vma_mapped.c                               |     6 +-
 mm/pagewalk.c                                      |    12 +-
 mm/rmap.c                                          |   184 +-
 mm/rodata_test.c                                   |     8 +-
 mm/secretmem.c                                     |     8 +-
 mm/shmem.c                                         |   429 +-
 mm/shuffle.c                                       |    21 +-
 mm/slab.h                                          |     1 +
 mm/slub.c                                          |    43 +
 mm/swap.c                                          |    73 +-
 mm/swap.h                                          |    18 +-
 mm/swap_cgroup.c                                   |     6 +
 mm/swap_slots.c                                    |     2 +-
 mm/swap_state.c                                    |   111 +-
 mm/swapfile.c                                      |   178 +-
 mm/truncate.c                                      |     2 +-
 mm/userfaultfd.c                                   |    28 +-
 mm/util.c                                          |    36 +-
 mm/vmacache.c                                      |   117 -
 mm/vmalloc.c                                       |    35 +-
 mm/vmscan.c                                        |  3556 +-
 mm/vmstat.c                                        |     9 +-
 mm/workingset.c                                    |   110 +-
 mm/zsmalloc.c                                      |    22 +-
 mm/zswap.c                                         |     2 +-
 scripts/Makefile.kmsan                             |     8 +
 scripts/Makefile.lib                               |     9 +
 security/Kconfig.hardening                         |     4 +
 tools/include/asm-generic/hugetlb_encode.h         |    26 +-
 tools/include/linux/slab.h                         |     4 +
 tools/include/uapi/asm-generic/mman-common.h       |     2 +
 tools/objtool/check.c                              |    20 +
 tools/testing/memblock/linux/mmzone.h              |     2 +
 tools/testing/radix-tree/.gitignore                |     2 +
 tools/testing/radix-tree/Makefile                  |     9 +-
 tools/testing/radix-tree/generated/autoconf.h      |     1 +
 tools/testing/radix-tree/linux.c                   |   160 +-
 tools/testing/radix-tree/linux/kernel.h            |     1 +
 tools/testing/radix-tree/linux/lockdep.h           |     2 +
 tools/testing/radix-tree/linux/maple_tree.h        |     7 +
 tools/testing/radix-tree/maple.c                   |    59 +
 tools/testing/radix-tree/trace/events/maple_tree.h |     5 +
 tools/testing/selftests/cgroup/config              |     1 -
 tools/testing/selftests/damon/Makefile             |     1 +
 .../damon/debugfs_duplicate_context_creation.sh    |    27 +
 tools/testing/selftests/vm/.gitignore              |     1 -
 tools/testing/selftests/vm/Makefile                |    23 +-
 tools/testing/selftests/vm/check_config.sh         |    31 -
 tools/testing/selftests/vm/hmm-tests.c             |   108 +-
 tools/testing/selftests/vm/khugepaged.c            |  1195 +-
 tools/testing/selftests/vm/mremap_test.c           |    49 +-
 tools/testing/selftests/vm/run_vmtests.sh          |    15 +-
 tools/testing/selftests/vm/soft-dirty.c            |     2 +-
 tools/testing/selftests/vm/split_huge_page_test.c  |    12 +-
 tools/testing/selftests/vm/test_hmm.sh             |    10 -
 tools/testing/selftests/vm/userfaultfd.c           |   247 +-
 tools/testing/selftests/vm/vm_util.c               |    36 +-
 tools/testing/selftests/vm/vm_util.h               |     5 +-
 tools/vm/page_owner_sort.c                         |     7 +-
 408 files changed, 65821 insertions(+), 8035 deletions(-)
 create mode 100644 Documentation/ABI/testing/sysfs-kernel-mm-memory-tiers
 create mode 100644 Documentation/admin-guide/mm/multigen_lru.rst
 create mode 100644 Documentation/core-api/maple_tree.rst
 create mode 100644 Documentation/dev-tools/kmsan.rst
 create mode 100644 Documentation/mm/multigen_lru.rst
 create mode 100644 arch/x86/include/asm/kmsan.h
 create mode 100644 arch/x86/mm/kmsan_shadow.c
 create mode 100644 include/linux/kmsan-checks.h
 create mode 100644 include/linux/kmsan.h
 create mode 100644 include/linux/kmsan_types.h
 create mode 100644 include/linux/maple_tree.h
 create mode 100644 include/linux/memory-tiers.h
 delete mode 100644 include/linux/vmacache.h
 create mode 100644 include/trace/events/maple_tree.h
 create mode 100644 lib/Kconfig.kmsan
 create mode 100644 lib/maple_tree.c
 create mode 100644 lib/test_maple_tree.c
 create mode 100644 mm/damon/modules-common.h
 rename lib/test_kasan.c => mm/kasan/kasan_test.c (98%)
 rename lib/test_kasan_module.c => mm/kasan/kasan_test_module.c (99%)
 create mode 100644 mm/kmsan/Makefile
 create mode 100644 mm/kmsan/core.c
 create mode 100644 mm/kmsan/hooks.c
 create mode 100644 mm/kmsan/init.c
 create mode 100644 mm/kmsan/instrumentation.c
 create mode 100644 mm/kmsan/kmsan.h
 create mode 100644 mm/kmsan/kmsan_test.c
 create mode 100644 mm/kmsan/report.c
 create mode 100644 mm/kmsan/shadow.c
 create mode 100644 mm/memory-tiers.c
 create mode 100644 mm/mm_slot.h
 delete mode 100644 mm/vmacache.c
 create mode 100644 scripts/Makefile.kmsan
 create mode 100644 tools/testing/radix-tree/linux/maple_tree.h
 create mode 100644 tools/testing/radix-tree/maple.c
 create mode 100644 tools/testing/radix-tree/trace/events/maple_tree.h
 create mode 100644 tools/testing/selftests/damon/debugfs_duplicate_context_creation.sh
 delete mode 100644 tools/testing/selftests/vm/check_config.sh





[Index of Archives]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Bugtraq]     [Linux OMAP]     [Linux MIPS]     [eCos]     [Asterisk Internet PBX]     [Linux API]

  Powered by Linux