Date: Sun, 24 Nov 2024 02:08:41 -0800
From: Andrew Morton <akpm@linux-foundation.org>
To: Linus Torvalds <torvalds@linux-foundation.org>
Cc: linux-mm@kvack.org, mm-commits@vger.kernel.org,
 linux-kernel@vger.kernel.org
Subject: [GIT PULL] non-MM updates for 6.13-rc1


Linus, please merge this cycle's non-MM updates, thanks.

Merge issues along with their linux-next resolutions are as follows:

kernel/auditsc.c, vs security tree:
https://lkml.kernel.org/r/20241014144648.1923104a@canb.auug.org.au

lib/Makefile, vs asm-generic tree:
https://lkml.kernel.org/r/20241029095525.0fba9d23@canb.auug.org.au


The following changes since commit 59b723cd2adbac2a34fc8e12c74ae26ae45bf230:

  Linux 6.12-rc6 (2024-11-03 14:05:52 -1000)

are available in the Git repository at:

  git://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm tags/mm-nonmm-stabl=
e-2024-11-24-02-05

for you to fetch changes up to 2c259a91d8d23a8266092b0dd51b8092877717a4:

  gdb: lx-symbols: do not error out on monolithic build (2024-11-14 22:51:1=
4 -0800)

----------------------------------------------------------------
- The series "resource: A couple of cleanups" from Andy Shevchenko
  performs some cleanups in the resource management code.

- The series "Improve the copy of task comm" from Yafang Shao addresses
  possible race-induced overflows in the management of task_struct.comm[].

- The series "Remove unnecessary header includes from
  {tools/}lib/list_sort.c" from Kuan-Wei Chiu adds some cleanups and a
  small fix to the list_sort library code and to its selftest.

- The series "Enhance min heap API with non-inline functions and
  optimizations" also from Kuan-Wei Chiu optimizes and cleans up the
  min_heap library code.

- The series "nilfs2: Finish folio conversion" from Ryusuke Konishi
  finishes off nilfs2's folioification.

- The series "add detect count for hung tasks" from Lance Yang adds more
  userspace visibility into the hung-task detector's activity.

- Apart from that, singelton patches in many places - please see the
  individual changelogs for details.

----------------------------------------------------------------
Alexandru Ardelean (2):
      util_macros.h: fix/rework find_closest() macros
      lib: util_macros_kunit: add kunit test for util_macros.h

Andrew Kreimer (1):
      ocfs2: cluster: fix a typo

Andy Shevchenko (2):
      resource: replace open coded resource_intersection()
      resource: introduce is_type_match() helper and use it

Breno Leitao (1):
      scripts/decode_stacktrace.sh: remove trailing space

Dmitry Antipov (1):
      ocfs2: fix uninitialized value in ocfs2_file_read_iter()

Dr. David Alan Gilbert (1):
      ocfs2: remove unused errmsg function and table

Etienne Buira (1):
      gdb: lx-symbols: do not error out on monolithic build

Huang Ying (1):
      resource: avoid unnecessary resource tree walking in __region_interse=
cts()

I Hsin Cheng (1):
      list: test: check the size of every lists for list_cut_position*()

Ilpo J=E4rvinen (1):
      resource: correct reallocate_resource() documentation

Kuan-Wei Chiu (16):
      lib/Kconfig.debug: move int_pow test option to runtime testing section
      lib/Makefile: make union-find compilation conditional on CONFIG_CPUSE=
TS
      lib/list_sort: remove unnecessary header includes
      tools/lib/list_sort: remove unnecessary header includes
      perf tools: update expected diff for lib/list_sort.c
      lib/min_heap: introduce non-inline versions of min heap API functions
      lib min_heap: optimize min heap by prescaling counters for better per=
formance
      lib min_heap: avoid indirect function call by providing default swap
      lib/test_min_heap: update min_heap_callbacks to use default builtin s=
wap
      perf/core: update min_heap_callbacks to use default builtin swap
      dm vdo: update min_heap_callbacks to use default builtin swap
      bcache: update min_heap_callbacks to use default builtin swap
      bcachefs: clean up duplicate min_heap_callbacks declarations
      bcachefs: update min_heap_callbacks to use default builtin swap
      Documentation/core-api: add min heap API introduction
      MAINTAINERS: add entry for min heap library code

Lance Yang (2):
      hung_task: add detect count for hung tasks
      hung_task: add docs for hung_task_detect_count

Ma Wupeng (1):
      ipc: fix memleak if msg_init_ns failed in create_ipc_ns

Matthew Wilcox (Oracle) (4):
      nilfs2: remove nilfs_writepage
      nilfs2: convert nilfs_page_count_clean_buffers() to take a folio
      nilfs2: convert nilfs_recovery_copy_block() to take a folio
      nilfs2: convert metadata aops from writepage to writepages

Mirsad Todorovac (1):
      fs/proc/kcore.c: fix coccinelle reported ERROR instances

Mohammed Anees (1):
      ocfs2: fix typo in comment

Nataniel Farzan (1):
      Improve consistency of '#error' directive messages

Ryusuke Konishi (8):
      nilfs2: convert segment buffer to be folio-based
      nilfs2: convert common metadata file code to be folio-based
      nilfs2: convert segment usage file to be folio-based
      nilfs2: convert persistent object allocator to be folio-based
      nilfs2: convert inode file to be folio-based
      nilfs2: convert DAT file to be folio-based
      nilfs2: remove nilfs_palloc_block_get_entry()
      nilfs2: convert checkpoint file to be folio-based

Shuah Khan (1):
      tools: fix -Wunused-result in linux.c

Sourabh Jain (1):
      kexec/crash: no crash update when kexec in progress

Sui Jingfeng (2):
      scatterlist: fix a typo
      lib/scatterlist: use sg_phys() helper

Tamir Duberstein (1):
      checkpatch: always parse orig_commit in fixes tag

Thomas Wei=DFschuh (1):
      reboot: move reboot_notifier_list to kernel/reboot.c

Thorsten Blum (1):
      ipc/msg: replace one-element array with flexible array member

Tio Zhang (1):
      kernel/watchdog: always restore watchdog_softlockup(,hardlockup)_user=
_enabled after proc show

Uros Bizjak (5):
      perf/hw_breakpoint: use ERR_PTR_PCPU(), IS_ERR_PCPU() and PTR_ERR_PCP=
U() macros
      percpu: merge VERIFY_PERCPU_PTR() into its only user
      percpu: introduce PERCPU_PTR() macro
      percpu: cast percpu pointer in PERCPU_PTR() via unsigned long
      dma-buf: use atomic64_inc_return() in dma_buf_getfile()

Vinicius Peixoto (1):
      lib/crc16_kunit.c: add KUnit tests for crc16

WangYuli (1):
      scripts/spelling.txt: add typo "exprienced" and "rewritting"

Yafang Shao (7):
      get rid of __get_task_comm()
      auditsc: replace memcpy() with strscpy()
      security: replace memcpy() with get_task_comm()
      bpftool: ensure task comm is always NUL-terminated
      mm/util: fix possible race condition in kstrdup()
      mm/util: deduplicate code in {kstrdup,kstrndup,kmemdup_nul}
      drm: replace strcpy() with strscpy()

Yu Jiaoliang (1):
      scripts/spelling.txt: add more spellings corrections

Zhang Zekun (1):
      ocfs2: remove unused declaration in header file

zhangguopeng (1):
      kernel/reboot: replace sprintf() with sysfs_emit()

 Documentation/admin-guide/sysctl/kernel.rst        |   9 +
 Documentation/core-api/index.rst                   |   1 +
 Documentation/core-api/min_heap.rst                | 300 ++++++++++++++++
 MAINTAINERS                                        |   9 +
 arch/alpha/include/asm/spinlock_types.h            |   2 +-
 arch/arm/include/asm/spinlock_types.h              |   2 +-
 arch/arm64/include/asm/spinlock_types.h            |   2 +-
 arch/hexagon/include/asm/spinlock_types.h          |   2 +-
 arch/powerpc/include/asm/simple_spinlock_types.h   |   2 +-
 arch/powerpc/include/asm/spinlock_types.h          |   2 +-
 arch/s390/include/asm/spinlock_types.h             |   2 +-
 arch/sh/include/asm/spinlock_types.h               |   2 +-
 arch/xtensa/include/asm/spinlock_types.h           |   2 +-
 drivers/dma-buf/dma-buf.c                          |   2 +-
 drivers/gpu/drm/drm_framebuffer.c                  |   2 +-
 drivers/gpu/drm/i915/i915_gpu_error.c              |   6 +-
 drivers/md/bcache/Kconfig                          |   1 +
 drivers/md/bcache/alloc.c                          |  11 +-
 drivers/md/bcache/bset.c                           |  14 +-
 drivers/md/bcache/extents.c                        |  10 +-
 drivers/md/bcache/movinggc.c                       |  10 +-
 drivers/md/dm-vdo/Kconfig                          |   1 +
 drivers/md/dm-vdo/repair.c                         |   2 +-
 drivers/md/dm-vdo/slab-depot.c                     |  10 +-
 fs/bcachefs/Kconfig                                |   1 +
 fs/bcachefs/clock.c                                |  25 +-
 fs/bcachefs/ec.c                                   |  19 +-
 fs/exec.c                                          |  10 -
 fs/nilfs2/alloc.c                                  | 148 ++++----
 fs/nilfs2/alloc.h                                  |   4 +-
 fs/nilfs2/cpfile.c                                 | 383 +++++++++++------=
----
 fs/nilfs2/dat.c                                    |  98 +++---
 fs/nilfs2/dir.c                                    |   2 +-
 fs/nilfs2/ifile.c                                  |  10 +-
 fs/nilfs2/ifile.h                                  |   4 +-
 fs/nilfs2/inode.c                                  |  35 +-
 fs/nilfs2/mdt.c                                    |  40 ++-
 fs/nilfs2/page.c                                   |   4 +-
 fs/nilfs2/page.h                                   |   4 +-
 fs/nilfs2/recovery.c                               |  17 +-
 fs/nilfs2/segbuf.c                                 |  17 +-
 fs/nilfs2/sufile.c                                 | 160 ++++-----
 fs/ocfs2/alloc.c                                   |   2 +-
 fs/ocfs2/aops.h                                    |   2 +
 fs/ocfs2/cluster/quorum.c                          |   2 +-
 fs/ocfs2/dlm/dlmapi.h                              |   2 -
 fs/ocfs2/dlm/dlmdebug.c                            |  53 ---
 fs/ocfs2/file.c                                    |   4 +
 fs/ocfs2/quota.h                                   |   1 -
 fs/proc/array.c                                    |   2 +-
 fs/proc/kcore.c                                    |  10 +-
 include/acpi/platform/aclinux.h                    |   2 +-
 include/linux/compiler-clang.h                     |   2 +-
 include/linux/compiler-gcc.h                       |   2 +-
 include/linux/min_heap.h                           | 357 +++++++++++++++--=
--
 include/linux/notifier.h                           |   2 -
 include/linux/percpu-defs.h                        |  21 +-
 include/linux/pm_wakeup.h                          |   2 +-
 include/linux/rwlock.h                             |   2 +-
 include/linux/rwlock_api_smp.h                     |   2 +-
 include/linux/scatterlist.h                        |   2 +-
 include/linux/sched.h                              |  28 +-
 include/linux/spinlock_api_smp.h                   |   2 +-
 include/linux/spinlock_types_up.h                  |   2 +-
 include/linux/spinlock_up.h                        |   2 +-
 include/linux/util_macros.h                        |  56 ++-
 init/Kconfig                                       |   1 +
 ipc/msg.c                                          |   2 +-
 ipc/namespace.c                                    |   4 +-
 kernel/auditsc.c                                   |   6 +-
 kernel/crash_core.c                                |   6 +-
 kernel/events/core.c                               |  15 +-
 kernel/events/hw_breakpoint.c                      |   4 +-
 kernel/hung_task.c                                 |  18 +
 kernel/kthread.c                                   |   2 +-
 kernel/notifier.c                                  |   8 -
 kernel/reboot.c                                    |  15 +-
 kernel/resource.c                                  |  66 ++--
 kernel/watchdog.c                                  |   3 +-
 lib/Kconfig                                        |   6 +
 lib/Kconfig.debug                                  |  59 +++-
 lib/Makefile                                       |   6 +-
 lib/crc16_kunit.c                                  | 155 +++++++++
 lib/list-test.c                                    |   4 +
 lib/list_sort.c                                    |   3 -
 lib/min_heap.c                                     |  70 ++++
 lib/scatterlist.c                                  |   4 +-
 lib/test_min_heap.c                                |  16 +-
 lib/util_macros_kunit.c                            | 240 +++++++++++++
 mm/util.c                                          |  62 ++--
 samples/hw_breakpoint/data_breakpoint.c            |   4 +-
 scripts/checkpatch.pl                              |  37 +-
 scripts/decode_stacktrace.sh                       |   7 +-
 scripts/gdb/linux/modules.py                       |   3 +
 scripts/gdb/linux/symbols.py                       |   3 +
 scripts/spelling.txt                               |  33 ++
 security/lsm_audit.c                               |   4 +-
 security/selinux/selinuxfs.c                       |   2 +-
 tools/bpf/bpftool/pids.c                           |   2 +
 tools/include/linux/compiler-gcc.h                 |   2 +-
 tools/lib/list_sort.c                              |   2 -
 .../perf/check-header_ignore_hunks/lib/list_sort.c |  11 +-
 tools/testing/shared/linux.c                       |  14 +-
 103 files changed, 1952 insertions(+), 896 deletions(-)
 create mode 100644 Documentation/core-api/min_heap.rst
 create mode 100644 lib/crc16_kunit.c
 create mode 100644 lib/min_heap.c
 create mode 100644 lib/util_macros_kunit.c


.
Date: Mon, 25 Nov 2024 10:56:52 +0100
From: Vlastimil Babka <vbabka@suse.cz>
To: Linus Torvalds <torvalds@linux-foundation.org>
Cc: David Rientjes <rientjes@google.com>, Christoph Lameter <cl@linux.com>,
 Andrew Morton <akpm@linux-foundation.org>,
 "linux-mm@kvack.org" <linux-mm@kvack.org>,
 LKML <linux-kernel@vger.kernel.org>,
 Roman Gushchin <roman.gushchin@linux.dev>,
 Hyeonggon Yoo <42.hyeyoo@gmail.com>
Subject: [GIT PULL] slab updates for 6.13 v2

Hi Linus,

please pull the latest slab updates from:

  git://git.kernel.org/pub/scm/linux/kernel/git/vbabka/slab.git tags/slab-for-6.13-v2

One new feature and non-critical fixes (mostly related to debugging).
No conflicts to be expected, AFAIK.

After fixing up the bug that was in the v1 pull 9 days ago, I've only added
Geert's fix on top 5 days ago, and it was all in -next.

Thanks,
Vlastimil

======================================

- Add new slab_strict_numa boot parameter to enforce per-object memory policies
  on top of slab folio policies, for systems where saving cost of remote
  accesses is more important than minimizing slab allocation overhead
  (Christoph Lameter)

- Fix for freeptr_offset alignment check being too strict for m68k (Geert
  Uytterhoeven)

- krealloc() fixes for not violating __GFP_ZERO guarantees on krealloc() when
  slub_debug (redzone and object tracking) is enabled (Feng Tang)

- Fix a memory leak in case sysfs registration fails for a slab cache, and also
  no longer fail to create the cache in that case (Hyeonggon Yoo)

- Fix handling of detected consistency problems (due to buggy slab user) with
  slub_debug enabled, so that it does not cause further list corruption bugs
  (yuan.gao)

- Code cleanup and kerneldocs polishing (Zhen Lei, Vlastimil Babka)

----------------------------------------------------------------
Christoph Lameter (1):
      SLUB: Add support for per object memory policies

Feng Tang (5):
      mm/kasan: Don't store metadata inside kmalloc object when slub_debug_orig_size is on
      mm/slub: Move krealloc() and related code to slub.c
      mm/slub: Consider kfence case for get_orig_size()
      mm/slub: Improve redzone check and zeroing for krealloc()
      mm/slub, kunit: Add testcase for krealloc redzone and zeroing

Geert Uytterhoeven (1):
      slab: Fix too strict alignment check in create_cache()

Hyeonggon Yoo (1):
      mm/slab: Allow cache creation to proceed even if sysfs registration fails

Vlastimil Babka (2):
      mm, slab: add kerneldocs for common SLAB_ flags
      Merge branch 'slab/for-6.13/features' into slab/for-next

Zhen Lei (1):
      mm/slab: remove duplicate check in create_cache()

yuan.gao (1):
      mm/slub: Avoid list corruption when removing a slab from the full list

 Documentation/admin-guide/kernel-parameters.txt |  10 ++
 Documentation/mm/slub.rst                       |   9 +
 include/linux/slab.h                            |  60 ++++---
 lib/slub_kunit.c                                |  42 +++++
 mm/kasan/generic.c                              |   7 +-
 mm/slab.h                                       |  11 ++
 mm/slab_common.c                                | 103 ++---------
 mm/slub.c                                       | 218 +++++++++++++++++++++---
 8 files changed, 324 insertions(+), 136 deletions(-)

.
Date: Wed, 27 Nov 2024 10:06:29 +0200
From: Mike Rapoport <rppt@kernel.org>
To: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Hua Su <suhua.tanke@gmail.com>, Mike Rapoport <rppt@kernel.org>,
	Thorsten Blum <thorsten.blum@linux.dev>, linux-mm@kvack.org,
	linux-kernel@vger.kernel.org
Subject: [GIT PULL] memblock updates for 6.13-rc1

Hi Linus,

The following changes since commit 8e929cb546ee42c9a61d24fae60605e9e3192354:

  Linux 6.12-rc3 (2024-10-13 14:33:32 -0700)

are available in the Git repository at:

  https://git.kernel.org/pub/scm/linux/kernel/git/rppt/memblock tags/memblock-v6.13-rc1

for you to fetch changes up to 98b7beba1ee6fb4ee755812e6c06cfc9084e7430:

  memblock: uniformly initialize all reserved pages to MIGRATE_MOVABLE (2024-10-28 12:16:06 +0200)

----------------------------------------------------------------
memblock: updates for 6.13-rc1

* replace hardcoded strings with str_on_off() in report_meminit()
* initialize reserved pages to MIGRATE_MOVABLE when deferred struct page
  initialization is enabled so that if the reserved pages are freed they
  are put on movable free lists like it is done now when deferred struct
  page initialization is disabled

----------------------------------------------------------------
Hua Su (1):
      memblock: uniformly initialize all reserved pages to MIGRATE_MOVABLE

Thorsten Blum (1):
      mm: Use str_on_off() helper function in report_meminit()

 mm/mm_init.c | 7 +++++--
 1 file changed, 5 insertions(+), 2 deletions(-)

-- 
Sincerely yours,
Mike.

.
Date: Fri, 6 Dec 2024 12:26:20 +0200
From: Mike Rapoport <rppt@kernel.org>
To: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Andrew Morton <akpm@linux-foundation.org>,
	Marc Zyngier <maz@kernel.org>, Mike Rapoport <rppt@kernel.org>,
	linux-mm@kvack.org, linux-kernel@vger.kernel.org
Subject: [GIT PULL] memblock: restore check for node validity in arch_numa

Hi Linus,

The following changes since commit bcc8eda6d34934d80b96adb8dc4ff5dfc632a53a:

  Merge tag 'turbostat-2024.11.30' of git://git.kernel.org/pub/scm/linux/kernel/git/lenb/linux (2024-11-30 18:30:22 -0800)

are available in the Git repository at:

  https://git.kernel.org/pub/scm/linux/kernel/git/rppt/memblock tags/fixes-2024-12-06

for you to fetch changes up to 180bbad698641873120a48857bb3b9f3166bf684:

  arch_numa: Restore nid checks before registering a memblock with a node (2024-12-01 22:04:52 +0200)

----------------------------------------------------------------
memblock: restore check for node validity in arch_numa

Rework of NUMA initialization in arch_numa dropped a check that refused to
accept configurations with invalid node IDs.

Restore that check to ensure that when firmware passes invalid nodes, such
configuration is rejected and kernel gracefully falls back to dummy NUMA.

----------------------------------------------------------------
Marc Zyngier (1):
      arch_numa: Restore nid checks before registering a memblock with a node

Mike Rapoport (Microsoft) (1):
      memblock: allow zero threshold in validate_numa_converage()

 drivers/base/arch_numa.c | 4 ++++
 mm/memblock.c            | 4 ++--
 2 files changed, 6 insertions(+), 2 deletions(-)

-- 
Sincerely yours,
Mike.

.
Date: Sat, 7 Dec 2024 22:41:37 -0800
From: Andrew Morton <akpm@linux-foundation.org>
To: Linus Torvalds <torvalds@linux-foundation.org>
Cc: linux-kernel@vger.kernel.org, mm-commits@vger.kernel.org,
 linux-mm@kvack.org
Subject: [GIT PULL] hotfixes for 6.13-rc2


Linus, please merge this patch of hotfixes, thanks.


The following changes since commit 40384c840ea1944d7c5a392e8975ed088ecf0b37:

  Linux 6.13-rc1 (2024-12-01 14:28:56 -0800)

are available in the Git repository at:

  git://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm tags/mm-hotfixes-stable-2024-12-07-22-39

for you to fetch changes up to f1ee5483e40881d8ad5a63aa148b753b5c6a839b:

  iio: magnetometer: yas530: use signed integer type for clamp limits (2024-12-05 19:54:48 -0800)

----------------------------------------------------------------
24 hotfixes.  17 are cc:stable.  15 are MM and 9 are non-MM.

The usual bunch of singletons - please see the relevant changelogs for
details.

----------------------------------------------------------------
Adrian Huang (1):
      sched/numa: fix memory leak due to the overwritten vma->numab_state

Akinobu Mita (1):
      mm/damon: fix order of arguments in damos_before_apply tracepoint

Andrew Morton (1):
      fs/proc/vmcore.c: fix warning when CONFIG_MMU=n

Andrii Nakryiko (1):
      mm: fix vrealloc()'s KASAN poisoning logic

David Hildenbrand (2):
      mm/mempolicy: fix migrate_to_node() assuming there is at least one VMA in a MM
      mm/filemap: don't call folio_test_locked() without a reference in next_uptodate_folio()

David Wang (1):
      mm/codetag: swap tags when migrate pages

Jakob Hauser (1):
      iio: magnetometer: yas530: use signed integer type for clamp limits

Jan Kara (1):
      Revert "readahead: properly shorten readahead when falling back to do_page_cache_ra()"

Jared Kangas (1):
      kasan: make report_lock a raw spinlock

John Hubbard (1):
      mm/gup: handle NULL pages in unpin_user_pages()

John Sperbeck (1):
      mm: memcg: declare do_memsw_account inline

Kalesh Singh (1):
      mm: respect mmap hint address when aligning for THP

Kees Cook (1):
      lib: stackinit: hide never-taken branch from compiler

Lorenzo Stoakes (1):
      mm: correct typo in MMAP_STATE() macro

Marco Elver (1):
      stackdepot: fix stack_depot_save_flags() in NMI context

Mark Brown (1):
      selftest: hugetlb_dio: fix test naming

Matthew Wilcox (Oracle) (2):
      mm: open-code PageTail in folio_flags() and const_folio_flags()
      mm: open-code page_folio() in dump_page()

Maximilian Heyne (1):
      selftests/damon: add _damon_sysfs.py to TEST_FILES

Randy Dunlap (1):
      scatterlist: fix incorrect func name in kernel-doc

Ryusuke Konishi (1):
      nilfs2: fix potential out-of-bounds memory access in nilfs_find_entry()

Tetsuo Handa (1):
      ocfs2: free inode when ocfs2_get_init_inode() fails

Wengang Wang (1):
      ocfs2: update seq_file index in ocfs2_dlm_seq_next

 drivers/iio/magnetometer/yamaha-yas530.c | 13 ++++----
 fs/nilfs2/dir.c                          |  2 +-
 fs/ocfs2/dlmglue.c                       |  1 +
 fs/ocfs2/namei.c                         |  4 ++-
 fs/proc/vmcore.c                         | 56 ++++++++++++++++----------------
 include/linux/page-flags.h               |  4 +--
 include/linux/pgalloc_tag.h              |  4 +--
 include/linux/scatterlist.h              |  2 +-
 include/linux/stackdepot.h               |  6 ++--
 include/trace/events/damon.h             |  2 +-
 kernel/sched/fair.c                      | 12 +++++--
 lib/alloc_tag.c                          | 36 ++++++++++++--------
 lib/stackdepot.c                         | 10 +++++-
 lib/stackinit_kunit.c                    |  1 +
 mm/debug.c                               |  7 ++--
 mm/filemap.c                             |  4 +--
 mm/gup.c                                 | 11 ++++++-
 mm/kasan/report.c                        |  6 ++--
 mm/memcontrol-v1.h                       |  2 +-
 mm/mempolicy.c                           |  4 +++
 mm/migrate.c                             |  2 +-
 mm/mmap.c                                |  1 +
 mm/readahead.c                           |  5 ++-
 mm/vma.c                                 |  2 +-
 mm/vmalloc.c                             |  3 +-
 tools/testing/selftests/damon/Makefile   |  2 +-
 tools/testing/selftests/mm/hugetlb_dio.c | 14 +++-----
 27 files changed, 128 insertions(+), 88 deletions(-)


.
Date: Fri, 13 Dec 2024 10:42:17 +0100
From: Vlastimil Babka <vbabka@suse.cz>
To: Linus Torvalds <torvalds@linux-foundation.org>
Cc: David Rientjes <rientjes@google.com>, Christoph Lameter <cl@linux.com>,
 Andrew Morton <akpm@linux-foundation.org>,
 "linux-mm@kvack.org" <linux-mm@kvack.org>,
 LKML <linux-kernel@vger.kernel.org>,
 Roman Gushchin <roman.gushchin@linux.dev>,
 Hyeonggon Yoo <42.hyeyoo@gmail.com>, Shakeel Butt <shakeelb@google.com>
Subject: [GIT PULL] slab fixes for 6.12-rc6

Hi Linus,

please pull the latest slab fixes from:

  git://git.kernel.org/pub/scm/linux/kernel/git/vbabka/slab.git tags/slab-for-6.13-rc3

Thanks,
Vlastimil

======================================

- Fix for memcg unreclaimable slab stats drift when post-charging large
  kmalloc allocations (Shakeel Butt).

----------------------------------------------------------------
Shakeel Butt (1):
      memcg: slub: fix SUnreclaim for post charged objects

 mm/slub.c | 21 ++++++++++++++++++---
 1 file changed, 18 insertions(+), 3 deletions(-)

.
Date: Sat, 21 Dec 2024 12:11:29 -0800
From: Andrew Morton <akpm@linux-foundation.org>
To: Linus Torvalds <torvalds@linux-foundation.org>
Cc: linux-mm@kvack.org, mm-commits@vger.kernel.org,
 linux-kernel@vger.kernel.org
Subject: [GIT PULL] hotfixes for 6.13-rc4


Linus, please merge this batch of hotfixes, thanks.


The following changes since commit 78d4f34e2115b517bcbfe7ec0d018bbbb6f9b0b8:

  Linux 6.13-rc3 (2024-12-15 15:58:23 -0800)

are available in the Git repository at:

  git://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm tags/mm-hotfixes-stable-2024-12-21-12-09

for you to fetch changes up to d3ac65d274b3a93cf9cf9559fd1473ab65e00e10:

  mm: huge_memory: handle strsep not finding delimiter (2024-12-18 19:04:47 -0800)

----------------------------------------------------------------
25 hotfixes.  16 are cc:stable.  19 are MM and 6 are non-MM.

The usual bunch of singletons and doubletons - please see the relevant
changelogs for details.

----------------------------------------------------------------
Bart Van Assche (1):
      mm/vmstat: fix a W=1 clang compiler warning

David Hildenbrand (1):
      mm/page_alloc: don't call pfn_to_page() on possibly non-existent PFN in split_large_buddy()

David Wang (1):
      mm/codetag: clear tags before swap

Edward Adam Davis (1):
      nilfs2: prevent use of deleted inode

Heming Zhao (2):
      ocfs2: revert "ocfs2: fix the la space leak when unmounting an ocfs2 volume"
      ocfs2: fix the space leak in LA when releasing LA

Huang Ying (1):
      mailmap: add entry for Ying Huang

Hugh Dickins (1):
      mm: shmem: fix ShmemHugePages at swapout

Isaac J. Manjarres (1):
      selftests/memfd: run sysctl tests when PID namespace support is enabled

Kairui Song (2):
      zram: refuse to use zero sized block device as backing device
      zram: fix uninitialized ZRAM not releasing backing device

Kefeng Wang (2):
      mm: use aligned address in clear_gigantic_page()
      mm: use aligned address in copy_user_gigantic_page()

Leo Stone (1):
      mm: huge_memory: handle strsep not finding delimiter

Lorenzo Stoakes (3):
      docs/mm: add VMA locks documentation
      mm: correctly reference merged VMA
      fork: avoid inappropriate uprobe access to invalid mm

Matthew Wilcox (Oracle) (1):
      vmalloc: fix accounting with i915

Petr Malat (1):
      mm: add RCU annotation to pte_offset_map(_lock)

Ryusuke Konishi (1):
      nilfs2: fix buffer head leaks in calls to truncate_inode_pages()

Suren Baghdasaryan (2):
      alloc_tag: fix module allocation tags populated area calculation
      alloc_tag: fix set_codetag_empty() when !CONFIG_MEM_ALLOC_PROFILING_DEBUG

Usama Arif (1):
      mm: convert partially_mapped set/clear operations to be atomic

Zi Yan (2):
      mm: introduce cpu_icache_is_aliasing() across all architectures
      mm: use clear_user_(high)page() for arch with special user folio handling

 .mailmap                                   |   1 +
 Documentation/mm/process_addrs.rst         | 850 +++++++++++++++++++++++++++++
 arch/arc/Kconfig                           |   1 +
 arch/arc/include/asm/cachetype.h           |   8 +
 drivers/block/zram/zram_drv.c              |  15 +-
 fs/hugetlbfs/inode.c                       |   2 +-
 fs/nilfs2/btnode.c                         |   1 +
 fs/nilfs2/gcinode.c                        |   2 +-
 fs/nilfs2/inode.c                          |  13 +-
 fs/nilfs2/namei.c                          |   5 +
 fs/nilfs2/nilfs.h                          |   1 +
 fs/ocfs2/localalloc.c                      |  27 +-
 include/linux/alloc_tag.h                  |   9 +-
 include/linux/cacheinfo.h                  |   6 +
 include/linux/highmem.h                    |   8 +-
 include/linux/mm.h                         |  31 +-
 include/linux/page-flags.h                 |  12 +-
 include/linux/vmstat.h                     |   2 +-
 kernel/fork.c                              |  13 +-
 lib/alloc_tag.c                            |  41 +-
 mm/huge_memory.c                           |  19 +-
 mm/hugetlb.c                               |   5 +-
 mm/internal.h                              |   6 -
 mm/memory.c                                |  18 +-
 mm/page_alloc.c                            |   6 +-
 mm/pgtable-generic.c                       |   2 +-
 mm/shmem.c                                 |  22 +-
 mm/vma.c                                   |   5 +-
 mm/vmalloc.c                               |   6 +-
 tools/testing/selftests/memfd/memfd_test.c |  14 +-
 30 files changed, 1049 insertions(+), 102 deletions(-)
 create mode 100644 arch/arc/include/asm/cachetype.h


.
Date: Sat, 4 Jan 2025 18:05:11 -0800
From: Andrew Morton <akpm@linux-foundation.org>
To: Linus Torvalds <torvalds@linux-foundation.org>
Cc: linux-mm@kvack.org, mm-commits@vger.kernel.org,
 linux-kernel@vger.kernel.org
Subject: [GIT PULL] hotfixes for 6.13-rc6


Linus, please merge this batch of hotfixes, thanks.


The following changes since commit 4bbf9020becbfd8fc2c3da790855b7042fad455b:

  Linux 6.13-rc4 (2024-12-22 13:22:21 -0800)

are available in the Git repository at:

  git://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm tags/mm-hotfixes-stable-2025-01-04-18-02

for you to fetch changes up to e7404921818d676da4d7143ce78659456b05e2af:

  MAINTAINERS: change Arınç _NAL's name and email address (2024-12-30 17:59:12 -0800)

----------------------------------------------------------------
25 hotfixes.  16 are cc:stable.  18 are MM and 7 are non-MM.

The usual bunch of singletons and two doubletons - please see the relevant
changelogs for details.

----------------------------------------------------------------
Alessandro Carminati (1):
      mm/kmemleak: fix sleeping function called from invalid context at print message

Arnd Bergmann (1):
      kcov: mark in_softirq_really() as __always_inline

Baolin Wang (3):
      docs: mm: fix the incorrect 'FileHugeMapped' field
      mm: shmem: fix incorrect index alignment for within_size policy
      mm: shmem: fix the update of 'shmem_falloc->nr_unswapped'

Chester A. Unal (1):
      MAINTAINERS: change Arınç _NAL's name and email address

David Hildenbrand (1):
      fs/proc/task_mmu: fix pagemap flags with PMD THP entries on 32bit

Dennis Lam (1):
      ocfs2: fix slab-use-after-free due to dangling pointer dqi_priv

Gal Pressman (1):
      percpu: remove intermediate variable in PERCPU_PTR()

Kairui Song (2):
      mm/list_lru: fix false warning of negative counter
      mm, madvise: fix potential workingset node list_lru leaks

Kefeng Wang (1):
      mm: don't try THP alignment for FS without get_unmapped_area

Koichiro Den (1):
      vmstat: disable vmstat_work on vmstat_cpu_down_prep()

Kuan-Wei Chiu (1):
      scripts/sorttable: fix orc_sort_cmp() to maintain symmetry and transitivity

Liu Shixin (1):
      mm: hugetlb: independent PMD page table shared count

Lorenzo Stoakes (2):
      mm: reinstate ability to map write-sealed memfd mappings read-only
      selftests/memfd: add test for mapping write-sealed memfd read-only

Mathieu Othacehe (1):
      mailmap: modify the entry for Mathieu Othacehe

Seiji Nishikawa (1):
      mm: vmscan: account for free pages to prevent infinite Loop in throttle_direct_reclaim()

SeongJae Park (2):
      mm/damon/core: fix new damon_target objects leaks on damon_commit_targets()
      mm/damon/core: fix ignored quota goals and filters of newly committed schemes

Tetsuo Handa (1):
      mm/util: make memdup_user_nul() similar to memdup_user()

Yafang Shao (1):
      mm/readahead: fix large folio support in async readahead

Yang Erkun (1):
      maple_tree: reload mas before the second call for mas_empty_area

Yosry Ahmed (1):
      mm: zswap: fix race between [de]compression and CPU hotunplug

 .mailmap                                   |  2 +-
 Documentation/admin-guide/mm/transhuge.rst |  2 +-
 MAINTAINERS                                |  6 +--
 fs/ocfs2/quota_global.c                    |  2 +-
 fs/ocfs2/quota_local.c                     |  1 +
 fs/proc/task_mmu.c                         |  2 +-
 include/linux/memfd.h                      | 14 +++++++
 include/linux/mm.h                         | 59 +++++++++++++++++++++---------
 include/linux/mm_types.h                   | 30 +++++++++++++++
 include/linux/percpu-defs.h                |  5 +--
 kernel/kcov.c                              |  2 +-
 lib/maple_tree.c                           |  1 +
 mm/damon/core.c                            | 10 ++++-
 mm/filemap.c                               |  9 -----
 mm/hugetlb.c                               | 16 ++++----
 mm/internal.h                              |  6 +++
 mm/khugepaged.c                            |  3 ++
 mm/kmemleak.c                              |  2 +-
 mm/list_lru.c                              |  2 +-
 mm/memfd.c                                 |  2 +-
 mm/mmap.c                                  |  6 ++-
 mm/readahead.c                             |  6 ++-
 mm/shmem.c                                 |  7 ++--
 mm/util.c                                  |  7 +---
 mm/vmscan.c                                |  9 ++++-
 mm/vmstat.c                                |  3 +-
 mm/zswap.c                                 | 19 ++++++++--
 scripts/sorttable.h                        |  5 ++-
 tools/testing/selftests/memfd/memfd_test.c | 43 ++++++++++++++++++++++
 29 files changed, 212 insertions(+), 69 deletions(-)


.
Date: Mon, 13 Jan 2025 00:05:43 -0800
From: Andrew Morton <akpm@linux-foundation.org>
To: Linus Torvalds <torvalds@linux-foundation.org>
Cc: linux-mm@kvack.org, mm-commits@vger.kernel.org,
 linux-kernel@vger.kernel.org
Subject: [GIT PULL] hotfixes against 6.13-rc7


Linus, please merge this batch of hotfixes, thanks.



The following changes since commit cd6313beaeaea0b2e6d428afef7a86a986b50abe:

  Revert "vmstat: disable vmstat_work on vmstat_cpu_down_prep()" (2025-01-06 06:10:24 -0800)

are available in the Git repository at:

  git://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm tags/mm-hotfixes-stable-2025-01-13-00-03

for you to fetch changes up to cbc5dde0a461240046e8a41c43d7c3b76d5db952:

  fs/proc: fix softlockup in __read_vmcore (part 2) (2025-01-12 19:03:38 -0800)

----------------------------------------------------------------
18 hotfixes.  11 are cc:stable.  13 are MM and 5 are non-MM.

All patches are singletons - please see the relevant changelogs for
details.

----------------------------------------------------------------
Donet Tom (1):
      mm: vmscan : pgdemote vmstat is not getting updated when MGLRU is enabled.

Guo Weikang (1):
      mm/kmemleak: fix percpu memory leak detection failure

Honggyu Kim (1):
      mm/mempolicy: count MPOL_WEIGHTED_INTERLEAVE to "interleave_hit"

Juergen Gross (1):
      x86/execmem: fix ROX cache usage in Xen PV guests

Kairui Song (1):
      zram: fix potential UAF of zram table

Koichiro Den (1):
      vmstat: disable vmstat_work on vmstat_cpu_down_prep()

Luca Ceresoli (1):
      scripts/decode_stacktrace.sh: fix decoding of lines with an additional info

Marco Nelissen (1):
      filemap: avoid truncating 64-bit offset to 32 bits

Matthew Wilcox (Oracle) (1):
      mm: fix assertion in folio_end_read()

Muchun Song (1):
      hugetlb: fix NULL pointer dereference in trace_hugetlbfs_alloc_inode

Petr Pavlu (1):
      module: fix writing of livepatch relocations in ROX text

Rik van Riel (1):
      fs/proc: fix softlockup in __read_vmcore (part 2)

Ryan Roberts (2):
      mm: clear uffd-wp PTE/PMD state on mremap()
      selftests/mm: set allocated memory to non-zero content in cow test

Stefan Roesch (1):
      mm: fix div by zero in bdi_ratio_from_pages

Suren Baghdasaryan (1):
      tools: fix atomic_set() definition to set the value correctly

Yosry Ahmed (2):
      Revert "mm: zswap: fix race between [de]compression and CPU hotunplug"
      mm: zswap: properly synchronize freeing resources during CPU hotunplug

 arch/x86/mm/init.c                      |  3 +-
 drivers/block/zram/zram_drv.c           |  1 +
 fs/proc/vmcore.c                        |  2 ++
 include/linux/module.h                  |  3 +-
 include/linux/userfaultfd_k.h           | 12 +++++++
 include/trace/events/hugetlbfs.h        |  2 +-
 mm/filemap.c                            |  4 +--
 mm/huge_memory.c                        | 12 +++++++
 mm/hugetlb.c                            | 14 +++++++-
 mm/kmemleak.c                           |  2 +-
 mm/mempolicy.c                          |  3 +-
 mm/mremap.c                             | 32 +++++++++++++++++-
 mm/page-writeback.c                     | 10 ++++--
 mm/vmscan.c                             |  3 ++
 mm/vmstat.c                             | 15 +++++++--
 mm/zswap.c                              | 59 +++++++++++++++++++++------------
 scripts/decode_stacktrace.sh            | 16 +++++++--
 tools/testing/selftests/mm/cow.c        |  8 ++---
 tools/testing/shared/linux/maple_tree.h |  2 +-
 tools/testing/vma/linux/atomic.h        |  2 +-
 20 files changed, 163 insertions(+), 42 deletions(-)


.
Date: Thu, 16 Jan 2025 21:13:22 -0800
From: Andrew Morton <akpm@linux-foundation.org>
To: Linus Torvalds <torvalds@linux-foundation.org>
Cc: linux-mm@kvack.org, mm-commits@vger.kernel.org,
 linux-kernel@vger.kernel.org
Subject: [GIT PULL] hotfixes for 6.13


Linus, please merge this batch of hotfixes, thanks.

The following changes since commit cbc5dde0a461240046e8a41c43d7c3b76d5db952:

  fs/proc: fix softlockup in __read_vmcore (part 2) (2025-01-12 19:03:38 -0800)

are available in the Git repository at:

  git://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm tags/mm-hotfixes-stable-2025-01-16-21-11

for you to fetch changes up to b0fce54b8c0d8e5f2b4c243c803c5996e73baee8:

  ocfs2: check dir i_size in ocfs2_find_entry (2025-01-15 21:15:44 -0800)

----------------------------------------------------------------
7 singleton hotfixes.  6 are MM.  2 are cc:stable and the remainder
address post-6.12 issues.

----------------------------------------------------------------
Ethan Carter Edwards (1):
      mailmap: update entry for Ethan Carter Edwards

Karan Sanghavi (1):
      mm: shmem: use signed int for version handling in casefold option

Liu Shixin (1):
      mm: khugepaged: fix call hpage_collapse_scan_file() for anonymous vma

Su Yue (1):
      ocfs2: check dir i_size in ocfs2_find_entry

Suren Baghdasaryan (1):
      alloc_tag: skip pgalloc_tag_swap if profiling is disabled

Yosry Ahmed (1):
      mm: zswap: move allocations during CPU init outside the lock

zihan zhou (1):
      mm: page_alloc: fix missed updates of lowmem_reserve in adjust_managed_page_count

 .mailmap        |  1 +
 fs/ocfs2/dir.c  | 25 +++++++++++++++++++++----
 lib/alloc_tag.c |  3 +++
 mm/khugepaged.c |  4 ++--
 mm/page_alloc.c |  3 +++
 mm/shmem.c      |  2 +-
 mm/zswap.c      | 42 ++++++++++++++++++++++++------------------
 7 files changed, 55 insertions(+), 25 deletions(-)


.
Date: Fri, 17 Jan 2025 15:13:18 +0100
From: Vlastimil Babka <vbabka@suse.cz>
To: Linus Torvalds <torvalds@linux-foundation.org>
Cc: David Rientjes <rientjes@google.com>, Christoph Lameter <cl@linux.com>,
 Andrew Morton <akpm@linux-foundation.org>,
 "linux-mm@kvack.org" <linux-mm@kvack.org>,
 LKML <linux-kernel@vger.kernel.org>,
 Roman Gushchin <roman.gushchin@linux.dev>,
 Hyeonggon Yoo <42.hyeyoo@gmail.com>,
 "Uladzislau Rezki (Sony)" <urezki@gmail.com>, RCU <rcu@vger.kernel.org>
Subject: [GIT PULL] slab updates for 6.14

Hi Linus,

please pull the latest slab updates from:

  git://git.kernel.org/pub/scm/linux/kernel/git/vbabka/slab.git tags/slab-for-6.14

There's a small conflict with the mm tree:
https://lore.kernel.org/all/20241216152721.15c5864d@canb.auug.org.au/

Thanks,
Vlastimil

======================================

* Move the kfree_rcu() implementation from RCU to SLAB subsystem
  (Uladzislau Rezki)

  The kfree_rcu() implementation has been historically maintained in the RCU
  subsystem. At LSF/MM we agreed to move it to SLAB, where it more logically
  belongs to. The batching is planned be more integrated with SLUB internals in
  the future, while using the RCU APIs like any other subsystem.

* Fix for kernel-doc warning (Randy Dunlap)

----------------------------------------------------------------
Randy Dunlap (1):
      mm/slab: fix kernel-doc func param names

Uladzislau Rezki (Sony) (5):
      rcu/kvfree: Initialize kvfree_rcu() separately
      rcu/kvfree: Move some functions under CONFIG_TINY_RCU
      rcu/kvfree: Adjust names passed into trace functions
      rcu/kvfree: Adjust a shrinker name
      mm/slab: Move kvfree_rcu() into SLAB

Vlastimil Babka (1):
      Merge branch 'slab/for-6.14/kfree_rcu_move' into slab/for-next

 include/linux/slab.h |   1 +
 init/main.c          |   1 +
 kernel/rcu/tree.c    | 876 --------------------------------------------------
 mm/slab.h            |   4 +-
 mm/slab_common.c     | 880 +++++++++++++++++++++++++++++++++++++++++++++++++++
 5 files changed, 884 insertions(+), 878 deletions(-)


.
Date: Sat, 18 Jan 2025 09:36:57 -0500
From: Steven Rostedt <rostedt@goodmis.org>
To: Linus Torvalds <torvalds@linux-foundation.org>
Cc: LKML <linux-kernel@vger.kernel.org>, Masami Hiramatsu
 <mhiramat@kernel.org>, Mathieu Desnoyers <mathieu.desnoyers@efficios.com>,
 Andrew Morton <akpm@linux-foundation.org>, Veronika  Molnarova
 <vmolnaro@redhat.com>, Suren Baghdasaryan <surenb@google.com>,
 linux-mm@kvack.org
Subject: [GIT PULL] tracing: gfp: Fix regression of GFP flags in trace
 events 6.13



Linus,

Fix regression in GFP output in trace events

It was reported that the GFP flags in trace events went from human
readable to just their hex values:

  gfp_flags=GFP_HIGHUSER_MOVABLE|__GFP_COMP to gfp_flags=0x140cca

This was caused by a change that added the use of enums in calculating
the GFP flags. As defines get translated into their values in the
trace event format files, the user space tooling could easily convert
the GFP flags into their symbols via the __print_flags() helper macro.
The problem is that enums do not get converted, and the names of the
enums show up in the format files and user space tooling cannot translate
them.

Add TRACE_DEFINE_ENUM() around the enums used for GFP flags which is the
tracing infrastructure macro that informs the tracing subsystem what
the values for enums and it can then expose that to user space.


Please pull the latest trace-v6.13-rc7-2 tree, which can be found at:


  git://git.kernel.org/pub/scm/linux/kernel/git/trace/linux-trace.git
trace-v6.13-rc7-2

Tag SHA1: c3b4e29a5e12d9b3cc8df441a52a44cc28f66f5c
Head SHA1: 60295b944ff6805e677c48ae4178532b207d43be


Steven Rostedt (1):
      tracing: gfp: Fix the GFP enum values shown for user space tracing tools

----
 include/trace/events/mmflags.h | 63 ++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 63 insertions(+)
---------------------------
commit 60295b944ff6805e677c48ae4178532b207d43be
Author: Steven Rostedt <rostedt@goodmis.org>
Date:   Thu Jan 16 16:41:24 2025 -0500

    tracing: gfp: Fix the GFP enum values shown for user space tracing tools
    
    Tracing tools like perf and trace-cmd read the /sys/kernel/tracing/events/*/*/format
    files to know how to parse the data and also how to print it. For the
    "print fmt" portion of that file, if anything uses an enum that is not
    exported to the tracing system, user space will not be able to parse it.
    
    The GFP flags use to be defines, and defines get translated in the print
    fmt sections. But now they are converted to use enums, which is not.
    
    The mm_page_alloc trace event format use to have:
    
      print fmt: "page=%p pfn=0x%lx order=%d migratetype=%d gfp_flags=%s",
        REC->pfn != -1UL ? (((struct page *)vmemmap_base) + (REC->pfn)) : ((void
        *)0), REC->pfn != -1UL ? REC->pfn : 0, REC->order, REC->migratetype,
        (REC->gfp_flags) ? __print_flags(REC->gfp_flags, "|", {( unsigned
        long)(((((((( gfp_t)(0x400u|0x800u)) | (( gfp_t)0x40u) | (( gfp_t)0x80u) |
        (( gfp_t)0x100000u)) | (( gfp_t)0x02u)) | (( gfp_t)0x08u) | (( gfp_t)0)) |
        (( gfp_t)0x40000u) | (( gfp_t)0x80000u) | (( gfp_t)0x2000u)) & ~((
        gfp_t)(0x400u|0x800u))) | (( gfp_t)0x400u)), "GFP_TRANSHUGE"}, {( unsigned
        long)((((((( gfp_t)(0x400u|0x800u)) | (( gfp_t)0x40u) | (( gfp_t)0x80u) |
        (( gfp_t)0x100000u)) | (( gfp_t)0x02u)) | (( gfp_t)0x08u) | (( gfp_t)0)) ...
    
    Where the GFP values are shown and not their names. But after the GFP
    flags were converted to use enums, it has:
    
      print fmt: "page=%p pfn=0x%lx order=%d migratetype=%d gfp_flags=%s",
        REC->pfn != -1UL ? (vmemmap + (REC->pfn)) : ((void *)0), REC->pfn != -1UL
        ? REC->pfn : 0, REC->order, REC->migratetype, (REC->gfp_flags) ?
        __print_flags(REC->gfp_flags, "|", {( unsigned long)((((((((
        gfp_t)(((((1UL))) << (___GFP_DIRECT_RECLAIM_BIT))|((((1UL))) <<
        (___GFP_KSWAPD_RECLAIM_BIT)))) | (( gfp_t)((((1UL))) << (___GFP_IO_BIT)))
        | (( gfp_t)((((1UL))) << (___GFP_FS_BIT))) | (( gfp_t)((((1UL))) <<
        (___GFP_HARDWALL_BIT)))) | (( gfp_t)((((1UL))) << (___GFP_HIGHMEM_BIT))))
        | (( gfp_t)((((1UL))) << (___GFP_MOVABLE_BIT))) | (( gfp_t)0)) | ((
        gfp_t)((((1UL))) << (___GFP_COMP_BIT))) ...
    
    Where the enums names like ___GFP_KSWAPD_RECLAIM_BIT are shown and not their
    values. User space has no way to convert these names to their values and
    the output will fail to parse. What is shown is now:
    
      mm_page_alloc:  page=0xffffffff981685f3 pfn=0x1d1ac1 order=0 migratetype=1 gfp_flags=0x140cca
    
    The TRACE_DEFINE_ENUM() macro was created to handle enums in the print fmt
    files. This causes them to be replaced at boot up with the numbers, so
    that user space tooling can parse it. By using this macro, the output is
    back to the human readable:
    
      mm_page_alloc: page=0xffffffff981685f3 pfn=0x122233 order=0 migratetype=1 gfp_flags=GFP_HIGHUSER_MOVABLE|__GFP_COMP
    
    Cc: stable@vger.kernel.org
    Cc: Masami Hiramatsu <mhiramat@kernel.org>
    Cc: Mark Rutland <mark.rutland@arm.com>
    Cc: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
    Cc: Andrew Morton <akpm@linux-foundation.org>
    Cc: Veronika  Molnarova <vmolnaro@redhat.com>
    Cc: Suren Baghdasaryan <surenb@google.com>
    Cc: Linus Torvalds <torvalds@linux-foundation.org>
    Link: https://lore.kernel.org/20250116214438.749504792@goodmis.org
    Reported-by: Michael Petlan <mpetlan@redhat.com>
    Closes: https://lore.kernel.org/all/87be5f7c-1a0-dad-daa0-54e342efaea7@redhat.com/
    Fixes: 772dd0342727c ("mm: enumerate all gfp flags")
    Signed-off-by: Steven Rostedt (Google) <rostedt@goodmis.org>

diff --git a/include/trace/events/mmflags.h b/include/trace/events/mmflags.h
index bb8a59c6caa2..d36c857dd249 100644
--- a/include/trace/events/mmflags.h
+++ b/include/trace/events/mmflags.h
@@ -13,6 +13,69 @@
  * Thus most bits set go first.
  */
 
+/* These define the values that are enums (the bits) */
+#define TRACE_GFP_FLAGS_GENERAL			\
+	TRACE_GFP_EM(DMA)			\
+	TRACE_GFP_EM(HIGHMEM)			\
+	TRACE_GFP_EM(DMA32)			\
+	TRACE_GFP_EM(MOVABLE)			\
+	TRACE_GFP_EM(RECLAIMABLE)		\
+	TRACE_GFP_EM(HIGH)			\
+	TRACE_GFP_EM(IO)			\
+	TRACE_GFP_EM(FS)			\
+	TRACE_GFP_EM(ZERO)			\
+	TRACE_GFP_EM(DIRECT_RECLAIM)		\
+	TRACE_GFP_EM(KSWAPD_RECLAIM)		\
+	TRACE_GFP_EM(WRITE)			\
+	TRACE_GFP_EM(NOWARN)			\
+	TRACE_GFP_EM(RETRY_MAYFAIL)		\
+	TRACE_GFP_EM(NOFAIL)			\
+	TRACE_GFP_EM(NORETRY)			\
+	TRACE_GFP_EM(MEMALLOC)			\
+	TRACE_GFP_EM(COMP)			\
+	TRACE_GFP_EM(NOMEMALLOC)		\
+	TRACE_GFP_EM(HARDWALL)			\
+	TRACE_GFP_EM(THISNODE)			\
+	TRACE_GFP_EM(ACCOUNT)			\
+	TRACE_GFP_EM(ZEROTAGS)
+
+#ifdef CONFIG_KASAN_HW_TAGS
+# define TRACE_GFP_FLAGS_KASAN			\
+	TRACE_GFP_EM(SKIP_ZERO)			\
+	TRACE_GFP_EM(SKIP_KASAN)
+#else
+# define TRACE_GFP_FLAGS_KASAN
+#endif
+
+#ifdef CONFIG_LOCKDEP
+# define TRACE_GFP_FLAGS_LOCKDEP		\
+	TRACE_GFP_EM(NOLOCKDEP)
+#else
+# define TRACE_GFP_FLAGS_LOCKDEP
+#endif
+
+#ifdef CONFIG_SLAB_OBJ_EXT
+# define TRACE_GFP_FLAGS_SLAB			\
+	TRACE_GFP_EM(NO_OBJ_EXT)
+#else
+# define TRACE_GFP_FLAGS_SLAB
+#endif
+
+#define TRACE_GFP_FLAGS				\
+	TRACE_GFP_FLAGS_GENERAL			\
+	TRACE_GFP_FLAGS_KASAN			\
+	TRACE_GFP_FLAGS_LOCKDEP			\
+	TRACE_GFP_FLAGS_SLAB
+
+#undef TRACE_GFP_EM
+#define TRACE_GFP_EM(a) TRACE_DEFINE_ENUM(___GFP_##a##_BIT);
+
+TRACE_GFP_FLAGS
+
+/* Just in case these are ever used */
+TRACE_DEFINE_ENUM(___GFP_UNUSED_BIT);
+TRACE_DEFINE_ENUM(___GFP_LAST_BIT);
+
 #define gfpflag_string(flag) {(__force unsigned long)flag, #flag}
 
 #define __def_gfpflag_names			\

.
Date: Fri, 24 Jan 2025 16:22:48 -0800
From: Andrew Morton <akpm@linux-foundation.org>
To: Linus Torvalds <torvalds@linux-foundation.org>
Cc: linux-mm@kvack.org, mm-commits@vger.kernel.org,
 linux-kernel@vger.kernel.org
Subject: [GIT PULL] MM updates for 6.14-rc1


Linus, please merge the MM updates for the 6.14 development cycle,
thanks.

Conflicts which I am seeing at this time, along with their linux-next
resolutions are:

include/linux/seqlock.h: trivial kerneldoc fixup

kernel/rcu/tree.c, vs slab tree:
https://lkml.kernel.org/r/20241216152721.15c5864d@canb.auug.org.au



Forthcoming build issues and their linux-next resolutions are:

io_uring/memmap.c, vs block tree:
https://lkml.kernel.org/r/20250110124406.17190e3a@canb.auug.org.au



Forthcoming conflicts are:

kernel/rcu/tree.c, vs rcu tree:
https://lkml.kernel.org/r/20241220133738.1beae531@canb.auug.org.au

arch/arm64/mm/pageattr.c vs arm64 tree:
https://lkml.kernel.org/r/20241024103709.082a6950@canb.auug.org.au

include/linux/mm.h vs arm64 tree:
https://lkml.kernel.org/r/20241028111058.4419a9ed@canb.auug.org.au

arch/s390/include/asm/set_memory.h, arch/s390/mm/pageattr.c vs s390 tree:
https://lkml.kernel.org/r/20241028111606.5c009055@canb.auug.org.au

arch/s390/mm/pageattr.c, vs s390 tree:
https://lkml.kernel.org/r/20241114101639.282d82a8@canb.auug.org.au

lib/Makefile, vs asm-generic tree:
https://lkml.kernel.org/r/20241029095525.0fba9d23@canb.auug.org.au

drivers/block/zram/zram_drv.c, vs block tree:
https://lkml.kernel.org/r/20241111135241.1640f547@canb.auug.org.au

include/linux/mm.h
include/linux/mm_types.h
kernel/fork.c
tools/testing/vma/vma_internal.h, vs tip tree:
https://lkml.kernel.org/r/20241209132446.77fcb14b@canb.auug.org.au

(hopefully not an issue - both trees were carrying the same patches)

scripts/checkpatch.pl, vs jc_docs tree:
https://lkml.kernel.org/r/20250106095826.140c01cb@canb.auug.org.au

drivers/gpu/drm/i915/display/intel_display_driver.c, vs drm-intel tree:
https://lkml.kernel.org/r/20250106130348.73a5fae6@canb.auug.org.au

arch/powerpc/Kconfig, vs powerpc tree:
https://lkml.kernel.org/r/20250109104611.2491cc3b@canb.auug.org.au



The following changes since commit cbc5dde0a461240046e8a41c43d7c3b76d5db952:

  fs/proc: fix softlockup in __read_vmcore (part 2) (2025-01-12 19:03:38 -0=
800)

are available in the Git repository at:

  git://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm tags/mm-stable-2025=
-01-24-16-19

for you to fetch changes up to fa31161bf3fca8b8341cee7e0077ab3c2062a4a9:

  kasan: sw_tags: use str_on_off() helper in kasan_init_sw_tags() (2025-01-=
19 17:37:34 -0800)

----------------------------------------------------------------
The various patchsets are summarized below.  Plus of course many
indivudual patches which are described in their changelogs.

- "Allocate and free frozen pages" from Matthew Wilcox reorganizes the
  page allocator so we end up with the ability to allocate and free
  zero-refcount pages.  So that callers (ie, slab) can avoid a refcount
  inc & dec.

- "Support large folios for tmpfs" from Baolin Wang teaches tmpfs to use
  large folios other than PMD-sized ones.

- "Fix mm/rodata_test" from Petr Tesarik performs some maintenance and
  fixes for this small built-in kernel selftest.

- "mas_anode_descend() related cleanup" from Wei Yang tidies up part of
  the mapletree code.

- "mm: fix format issues and param types" from Keren Sun implements a
  few minor code cleanups.

- "simplify split calculation" from Wei Yang provides a few fixes and a
  test for the mapletree code.

- "mm/vma: make more mmap logic userland testable" from Lorenzo Stoakes
  continues the work of moving vma-related code into the (relatively) new
  mm/vma.c.

- "mm/page_alloc: gfp flags cleanups for alloc_contig_*()" from David
  Hildenbrand cleans up and rationalizes handling of gfp flags in the page
  allocator.

- "readahead: Reintroduce fix for improper RA window sizing" from Jan
  Kara is a second attempt at fixing a readahead window sizing issue.  It
  should reduce the amount of unnecessary reading.

- "synchronously scan and reclaim empty user PTE pages" from Qi Zheng
  addresses an issue where "huge" amounts of pte pagetables are
  accumulated
  (https://lore.kernel.org/lkml/cover.1718267194.git.zhengqi.arch@bytedance=
.com/).
  Qi's series addresses this windup by synchronously freeing PTE memory
  within the context of madvise(MADV_DONTNEED).

- "selftest/mm: Remove warnings found by adding compiler flags" from
  Muhammad Usama Anjum fixes some build warnings in the selftests code
  when optional compiler warnings are enabled.

- "mm: don't use __GFP_HARDWALL when migrating remote pages" from David
  Hildenbrand tightens the allocator's observance of __GFP_HARDWALL.

- "pkeys kselftests improvements" from Kevin Brodsky implements various
  fixes and cleanups in the MM selftests code, mainly pertaining to the
  pkeys tests.

- "mm/damon: add sample modules" from SeongJae Park enhances DAMON to
  estimate application working set size.

- "memcg/hugetlb: Rework memcg hugetlb charging" from Joshua Hahn
  provides some cleanups to memcg's hugetlb charging logic.

- "mm/swap_cgroup: remove global swap cgroup lock" from Kairui Song
  removes the global swap cgroup lock.  A speedup of 10% for a tmpfs-based
  kernel build was demonstrated.

- "zram: split page type read/write handling" from Sergey Senozhatsky
  has several fixes and cleaups for zram in the area of zram_write_page().
  A watchdog softlockup warning was eliminated.

- "move pagetable_*_dtor() to __tlb_remove_table()" from Kevin Brodsky
  cleans up the pagetable destructor implementations.  A rare
  use-after-free race is fixed.

- "mm/debug: introduce and use VM_WARN_ON_VMG()" from Lorenzo Stoakes
  simplifies and cleans up the debugging code in the VMA merging logic.

- "Account page tables at all levels" from Kevin Brodsky cleans up and
  regularizes the pagetable ctor/dtor handling.  This results in
  improvements in accounting accuracy.

- "mm/damon: replace most damon_callback usages in sysfs with new core
  functions" from SeongJae Park cleans up and generalizes DAMON's sysfs
  file interface logic.

- "mm/damon: enable page level properties based monitoring" from
  SeongJae Park increases the amount of information which is presented in
  response to DAMOS actions.

- "mm/damon: remove DAMON debugfs interface" from SeongJae Park removes
  DAMON's long-deprecated debugfs interfaces.  Thus the migration to sysfs
  is completed.

- "mm/hugetlb: Refactor hugetlb allocation resv accounting" from Peter
  Xu cleans up and generalizes the hugetlb reservation accounting.

- "mm: alloc_pages_bulk: small API refactor" from Luiz Capitulino
  removes a never-used feature of the alloc_pages_bulk() interface.

- "mm/damon: extend DAMOS filters for inclusion" from SeongJae Park
  extends DAMOS filters to support not only exclusion (rejecting), but
  also inclusion (allowing) behavior.

- "Add zpdesc memory descriptor for zswap.zpool" from Alex Shi
  "introduces a new memory descriptor for zswap.zpool that currently
  overlaps with struct page for now.  This is part of the effort to reduce
  the size of struct page and to enable dynamic allocation of memory
  descriptors."

- "mm, swap: rework of swap allocator locks" from Kairui Song redoes and
  simplifies the swap allocator locking.  A speedup of 400% was
  demonstrated for one workload.  As was a 35% reduction for kernel build
  time with swap-on-zram.

- "mm: update mips to use do_mmap(), make mmap_region() internal" from
  Lorenzo Stoakes reworks MIPS's use of mmap_region() so that
  mmap_region() can be made MM-internal.

- "mm/mglru: performance optimizations" from Yu Zhao fixes a few MGLRU
  regressions and otherwise improves MGLRU performance.

- "Docs/mm/damon: add tuning guide and misc updates" from SeongJae Park
  updates DAMON documentation.

- "Cleanup for memfd_create()" from Isaac Manjarres does that thing.

- "mm: hugetlb+THP folio and migration cleanups" from David Hildenbrand
  provides various cleanups in the areas of hugetlb folios, THP folios and
  migration.

- "Uncached buffered IO" from Jens Axboe implements the new
  RWF_DONTCACHE flag which provides synchronous dropbehind for pagecache
  reading and writing.  To permite userspace to address issues with
  massive buildup of useless pagecache when reading/writing fast devices.

- "selftests/mm: virtual_address_range: Reduce memory" from Thomas
  Wei=DFschuh fixes and optimizes some of the MM selftests.

----------------------------------------------------------------
Alex Shi (7):
      mm/zsmalloc: add zpdesc memory descriptor for zswap.zpool
      mm/zsmalloc: use zpdesc in trylock_zspage()/lock_zspage()
      mm/zsmalloc: convert create_page_chain() and its users to use zpdesc
      mm/zsmalloc: convert reset_page to reset_zpdesc
      mm/zsmalloc: convert SetZsPageMovable and remove unused funcs
      mm/zsmalloc: convert get/set_first_obj_offset() to take zpdesc
      mm/zsmalloc: introduce __zpdesc_clear/set_zsmalloc()

Alice Ryhl (2):
      mm/zswap: add LRU_STOP to comment about dropping the lru lock
      list_lru: expand list_lru_add() docs with info about sublists

Andrew Morton (3):
      mm/damon/tests/vaddr-kunit.h: reduce stack consumption
      mm/huge_memory.c: rename shadowed local
      Documentation/filesystems/proc.rst: fix possessive form of "process"

Baolin Wang (6):
      mm: factor out the order calculation into a new helper
      mm: shmem: change shmem_huge_global_enabled() to return huge order bi=
tmap
      mm: shmem: add large folio support for tmpfs
      mm: shmem: add a kernel command line to change the default huge polic=
y for tmpfs
      docs: tmpfs: drop 'fadvise()' from the documentation
      mm: shmem: skip swapcache for swapin of synchronous swap device

Bruno Faccini (1):
      mm/fake-numa: allow later numa node hotplug

Byungchul Park (1):
      mm: separate move/undo parts from migrate_pages_batch()

Chen Ridong (1):
      memcg: fix soft lockup in the OOM process

Chin Yik Ming (1):
      mm/memory: fix a comment typo in lock_mm_and_find_vma()

Christoph Hellwig (1):
      mm: unexport apply_to_existing_page_range

David Hildenbrand (17):
      docs: tmpfs: update the large folios policy for tmpfs and shmem
      mm/memory_hotplug: move debug_pagealloc_map_pages() into online_pages=
_range()
      mm/page_isolation: don't pass gfp flags to isolate_single_pageblock()
      mm/page_isolation: don't pass gfp flags to start_isolate_page_range()
      mm/page_alloc: make __alloc_contig_migrate_range() static
      mm/page_alloc: sort out the alloc_contig_range() gfp flags mess
      mm/page_alloc: forward the gfp flags from alloc_contig_range() to pos=
t_alloc_hook()
      powernv/memtrace: use __GFP_ZERO with alloc_contig_pages()
      mm/hugetlb: don't map folios writable without VM_WRITE when copying d=
uring fork()
      mm/page_alloc: don't use __GFP_HARDWALL when migrating pages via allo=
c_contig*()
      mm/memory_hotplug: don't use __GFP_HARDWALL when migrating pages via =
memory offlining
      mm/huge_memory: convert has_hwpoisoned into a pure folio flag
      mm/hugetlb: rename isolate_hugetlb() to folio_isolate_hugetlb()
      mm/migrate: don't call folio_putback_active_hugetlb() on dst hugetlb =
folio
      mm/hugetlb: rename folio_putback_active_hugetlb() to folio_putback_hu=
getlb()
      mm/hugetlb-cgroup: convert hugetlb_cgroup_css_offline() to work on fo=
lios
      mm/hugetlb: use folio->lru int demote_free_hugetlb_folios()

Donet Tom (2):
      mm: migrate: remove unused argument vma from migrate_misplaced_folio()
      selftests/mm: add new test cases to the migration test

Dr. David Alan Gilbert (1):
      filemap: remove unused folio_add_wait_queue

Gregory Price (1):
      mm: add build-time option for hotplug memory default online type

Guillaume Morin (1):
      mm/hugetlb: support FOLL_FORCE|FOLL_WRITE

Guo Weikang (4):
      mm/shmem: refactor to reuse vfs_parse_monolithic_sep for option parsi=
ng
      mm/early_ioremap: add null pointer checks to prevent NULL-pointer der=
eference
      mm/memmap: prevent double scanning of memmap by kmemleak
      mm/memblock: add memblock_alloc_or_panic interface

Hao Ge (1):
      selftests/mm/cow: modify the incorrect checking parameters

Honggyu Kim (1):
      mm/damon/core: remove duplicate list_empty quota->goals check

Hyeonggon Yoo (12):
      mm/migrate: remove slab checks in isolate_movable_page()
      mm/zsmalloc: convert __zs_map_object/__zs_unmap_object to use zpdesc
      mm/zsmalloc: add and use pfn/zpdesc seeking funcs
      mm/zsmalloc: convert obj_malloc() to use zpdesc
      mm/zsmalloc: convert obj_allocated() and related helpers to use zpdesc
      mm/zsmalloc: convert init_zspage() to use zpdesc
      mm/zsmalloc: convert obj_to_page() and zs_free() to use zpdesc
      mm/zsmalloc: add two helpers for zs_page_migrate() and make it use zp=
desc
      mm/zsmalloc: convert __free_zspage() to use zpdesc
      mm/zsmalloc: convert location_to_obj() to take zpdesc
      mm/zsmalloc: convert migrate_zspage() to use zpdesc
      mm/zsmalloc: convert get_zspage() to take zpdesc

Isaac J. Manjarres (2):
      mm/memfd: refactor and cleanup the logic in memfd_create()
      mm/memfd: use strncpy_from_user() to read memfd name

Jan Kara (2):
      readahead: don't shorten readahead window in read_pages()
      readahead: properly shorten readahead when falling back to do_page_ca=
che_ra()

Jeff Xu (2):
      selftest/mm: remove seal_elf
      mseal: remove can_do_mseal()

Jens Axboe (12):
      mm/filemap: change filemap_create_folio() to take a struct kiocb
      mm/filemap: use page_cache_sync_ra() to kick off read-ahead
      mm/readahead: add folio allocation helper
      mm: add PG_dropbehind folio flag
      mm/readahead: add readahead_control->dropbehind member
      mm/truncate: add folio_unmap_invalidate() helper
      fs: add RWF_DONTCACHE iocb and FOP_DONTCACHE file_operations flag
      mm/filemap: add read support for RWF_DONTCACHE
      mm/filemap: drop streaming/uncached pages when writeback completes
      mm/filemap: add filemap_fdatawrite_range_kick() helper
      mm: call filemap_fdatawrite_range_kick() after IOCB_DONTCACHE issue
      mm: add FGP_DONTCACHE folio creation flag

Jiale Yang (1):
      mm: change type of cma_area_count to unsigned int

Jim Zhao (1):
      mm/page-writeback: consolidate wb_thresh bumping logic into __wb_calc=
_thresh

Jinliang Zheng (1):
      mm: fix outdated incorrect code comments for handle_mm_fault()

Joshua Hahn (4):
      memcg/hugetlb: introduce memcg_accounts_hugetlb
      memcg/hugetlb: introduce mem_cgroup_charge_hugetlb
      memcg/hugetlb: remove memcg hugetlb try-commit-cancel protocol
      mm/damon/paddr: improve readability of damon_pa_stat

Kairui Song (17):
      mm, memcontrol: avoid duplicated memcg enable check
      mm/swap_cgroup: remove swap_cgroup_cmpxchg
      mm/swap_cgroup: remove global swap cgroup lock
      mm/swap_cgroup: decouple swap cgroup recording and clearing
      mm, swap: minor clean up for swap entry allocation
      mm, swap: fold swap_info_get_cont in the only caller
      mm, swap: remove old allocation path for HDD
      mm, swap: use cluster lock for HDD
      mm, swap: clean up device availability check
      mm, swap: clean up plist removal and adding
      mm, swap: hold a reference during scan and cleanup flag usage
      mm, swap: use an enum to define all cluster flags and wrap flags chan=
ges
      mm, swap: reduce contention on device lock
      mm, swap: simplify percpu cluster updating
      mm, swap: introduce a helper for retrieving cluster from offset
      mm, swap: use a global swap cluster for non-rotation devices
      mm, swap_slots: remove slot cache for freeing path

Keren Sun (3):
      mm: prefer 'unsigned int' to bare use of 'unsigned'
      mm: remove unnecessary whitespace before a quoted newline
      mm: remove the non-useful else after a break in a if statement

Kevin Brodsky (22):
      selftests/mm: fix condition in uffd_move_test_common()
      selftests/mm: fix -Wmaybe-uninitialized warnings
      selftests/mm: fix strncpy() length
      selftests/mm: fix -Warray-bounds warnings in pkey_sighandler_tests
      selftests/mm: build with -O2
      selftests/mm: remove unused pkey helpers
      selftests/mm: define types using typedef in pkey-helpers.h
      selftests/mm: ensure pkey-*.h define inline functions only
      selftests/mm: remove empty pkey helper definition
      selftests/mm: ensure non-global pkey symbols are marked static
      selftests/mm: use sys_pkey helpers consistently
      selftests/mm: rename pkey register macro
      selftests/mm: skip pkey_sighandler_tests if support is missing
      selftests/mm: remove X permission from sigaltstack mapping
      riscv: mm: skip pgtable level check in {pud,p4d}_alloc_one
      asm-generic: pgalloc: provide generic p4d_{alloc_one,free}
      mm: move common part of pagetable_*_ctor to helper
      parisc: mm: ensure pagetable_pmd_[cd]tor are called
      m68k: mm: add calls to pagetable_pmd_[cd]tor
      ARM: mm: rename PGD helpers
      asm-generic: pgalloc: provide generic __pgd_{alloc,free}
      mm: introduce ctor/dtor at PGD level

Koichiro Den (1):
      hugetlb: prioritize surplus allocation from current node

Li Zhijian (1):
      selftests/mm: add a few missing gitignore files

Liam R. Howlett (1):
      test_maple_tree: test exhausted upper limit of mtree_alloc_cyclic()

Lorenzo Stoakes (16):
      mm/vma: move brk() internals to mm/vma.c
      mm/vma: move unmapped_area() internals to mm/vma.c
      mm: abstract get_arg_page() stack expansion and mmap read lock
      mm/vma: move stack expansion logic to mm/vma.c
      mm/vma: move __vm_munmap() to mm/vma.c
      selftests/mm: add fork CoW guard page test
      mm: enforce __must_check on VMA merge and split
      mm: perform all memfd seal checks in a single place
      MAINTAINERS: update MEMORY MAPPING section
      mm: assert mmap write lock held on do_mmap(), mmap_region()
      mm: add comments to do_mmap(), mmap_region() and vm_mmap()
      tools: testing: add simple __mmap_region() userland test
      mm/debug: introduce VM_WARN_ON_VMG() to dump VMA merge state
      mm/debug: prefer VM_WARN_ON_VMG() to report VMG debug warnings
      mips: vdso: prefer do_mmap() to mmap_region()
      mm: make mmap_region() internal

Luiz Capitulino (2):
      mm: alloc_pages_bulk_noprof: drop page_list argument
      mm: alloc_pages_bulk: rename API

Maninder Singh (1):
      lib/list_debug.c: add object information in case of invalid object

Matthew Wilcox (Oracle) (16):
      mm/page_alloc: cache page_zone() result in free_unref_page()
      mm: make alloc_pages_mpol() static
      mm/page_alloc: export free_frozen_pages() instead of free_unref_page()
      mm/page_alloc: move set_page_refcounted() to callers of post_alloc_ho=
ok()
      mm/page_alloc: move set_page_refcounted() to callers of prep_new_page=
()
      mm/page_alloc: move set_page_refcounted() to callers of get_page_from=
_freelist()
      mm/page_alloc: move set_page_refcounted() to callers of __alloc_pages=
_cpuset_fallback()
      mm/page_alloc: move set_page_refcounted() to callers of __alloc_pages=
_may_oom()
      mm/page_alloc: move set_page_refcounted() to callers of __alloc_pages=
_direct_compact()
      mm/page_alloc: move set_page_refcounted() to callers of __alloc_pages=
_direct_reclaim()
      mm/page_alloc: move set_page_refcounted() to callers of __alloc_pages=
_slowpath()
      mm/page_alloc: move set_page_refcounted() to end of __alloc_pages()
      mm/page_alloc: add __alloc_frozen_pages()
      mm/mempolicy: add alloc_frozen_pages()
      slab: allocate frozen pages
      mm: remove PageTransTail()

Muhammad Usama Anjum (4):
      selftests/mm: thp_settings: remove const from return type
      selftests/mm: pagemap_ioctl: Fix types mismatches shown by compiler o=
ptions
      selftests/mm: mseal_test: remove unused variables
      selftests/mm: mremap_test: Remove unused variable and type mismatches

Nicholas Piggin (1):
      lazy tlb: fix hotplug exit race with MMU_LAZY_TLB_SHOOTDOWN

Nihar Chaithanya (1):
      mm:kasan: fix sparse warnings: Should it be static?

Peter Xu (7):
      mm/hugetlb: fix avoid_reserve to allow taking folio from subpool
      mm/hugetlb: stop using avoid_reserve flag in fork()
      mm/hugetlb: rename avoid_reserve to cow_from_owner
      mm/hugetlb: clean up map/global resv accounting when allocate
      mm/hugetlb: simplify vma_has_reserves()
      mm/hugetlb: drop vma_has_reserves()
      mm/hugetlb: unify restore reserve accounting for new allocations

Peter Zijlstra (1):
      kasan: make kasan_record_aux_stack_noalloc() the default behaviour

Petr Tesarik (2):
      mm/rodata_test: use READ_ONCE() to read const variable
      mm/rodata_test: verify test data is unchanged, rather than non-zero

Pintu Kumar (1):
      mm/hugetlb_cgroup: avoid useless return in void function

Qi Zheng (26):
      mm: pgtable: make ptep_clear() non-atomic
      mm: khugepaged: recheck pmd state in retract_page_tables()
      mm: userfaultfd: recheck dst_pmd entry in move_pages_pte()
      mm: introduce zap_nonpresent_ptes()
      mm: introduce do_zap_pte_range()
      mm: skip over all consecutive none ptes in do_zap_pte_range()
      mm: zap_install_uffd_wp_if_needed: return whether uffd-wp pte has bee=
n re-installed
      mm: do_zap_pte_range: return any_skipped information to the caller
      mm: make zap_pte_range() handle full within-PMD range
      mm: pgtable: reclaim empty PTE page in madvise(MADV_DONTNEED)
      x86: mm: free page table pages by RCU instead of semi RCU
      x86: select ARCH_SUPPORTS_PT_RECLAIM if X86_64
      mm: pgtable: add statistics for P4D level page table
      arm64: pgtable: use mmu gather to free p4d level page table
      s390: pgtable: add statistics for PUD and P4D level page table
      mm: pgtable: introduce pagetable_dtor()
      arm: pgtable: move pagetable_dtor() to __tlb_remove_table()
      arm64: pgtable: move pagetable_dtor() to __tlb_remove_table()
      riscv: pgtable: move pagetable_dtor() to __tlb_remove_table()
      x86: pgtable: convert __tlb_remove_table() to use struct ptdesc
      x86: pgtable: move pagetable_dtor() to __tlb_remove_table()
      s390: pgtable: consolidate PxD and PTE TLB free paths
      mm: pgtable: introduce generic __tlb_remove_table()
      mm: pgtable: completely move pagetable_dtor() to generic tlb_remove_t=
able()
      mm: pgtable: move __tlb_remove_table_one() in x86 to generic file
      mm: pgtable: introduce generic pagetable_dtor_free()

Randy Dunlap (1):
      kasan: use correct kernel-doc format

Rik van Riel (1):
      mm: remove unnecessary calls to lru_add_drain

Roman Gushchin (2):
      mm: swap_cgroup: allocate swap_cgroup map using vcalloc()
      mm: swap_cgroup: get rid of __lookup_swap_cgroup()

Ryan Roberts (1):
      selftests/mm: introduce uffd-wp-mremap regression test

SeongJae Park (54):
      samples: add a skeleton of a sample DAMON module for working set size=
 estimation
      samples/damon/wsse: start and stop DAMON as the user requests
      samples/damon/wsse: implement working set size estimation and logging
      samples/damon: introduce a skeleton of a smaple DAMON module for proa=
ctive reclamation
      samples/damon/prcl: implement schemes setup
      mm/damon/sysfs-schemes: remove unnecessary schemes existence check in=
 damon_sysfs_schemes_clear_regions()
      mm/damon/sysfs: handle clear_schemes_tried_regions from DAMON sysfs c=
ontext
      mm/damon/core: introduce damon_call()
      mm/damon/sysfs: use damon_call() for update_schemes_stats
      mm/damon/sysfs: use damon_call() for commit_schemes_quota_goals
      mm/damon/sysfs: use damon_call() for update_schemes_effective_quotas
      mm/damon/core: implement damos_walk()
      Docs/mm/damon/design: document DAMOS regions walking
      mm/damon/sysfs: use damos_walk() for update_schemes_tried_{bytes,regi=
ons}
      mm/damon/sysfs: remove unused code for schemes tried regions update
      mm/damon: clarify trying vs applying on damos_stat kernel-doc comment
      Docs/mm/damon/design: add 'statistics' section
      Docs/admin-guide/mm/damon/usage: link damos stat design doc
      mm/damon: ask apply_scheme() to report filter-passed region-internal =
bytes
      mm/damon/paddr: report filter-passed bytes back for normal actions
      mm/damon/paddr: report filter-passed bytes back for DAMOS_STAT action
      mm/damon/core: implement per-scheme ops-handled filter-passed bytes s=
tat
      mm/damon/syfs-schemes: implement per-scheme filter-passed bytes stat
      Docs/mm/damon/design: document sz_ops_filter_passed
      Docs/admin-guide/mm/damon/usage: document sz_ops_filter_passed
      Docs/ABI/damon: document per-scheme filter-passed bytes stat file
      mm/damon/core: pass per-region filter-passed bytes to damos_walk_cont=
rol->walk_fn()
      mm/damon/sysfs-schemes: expose per-region filter-passed bytes
      Docs/mm/damon/design: document per-region sz_filter_passed stat
      Docs/admin-guide/mm/damon/usage: document sz_filtered_out of scheme t=
ried region directories
      Docs/ABI/damon: document per-region DAMOS filter-passed bytes stat fi=
le
      Docs/translations/*/admin-guide/mm/damon/usage: remove DAMON debugfs =
interface documentation
      Docs/admin-guide/mm/damon/usage: remove DAMON debugfs interface docum=
entation
      Docs/mm/damon/design: update for removal of DAMON debugfs interface
      selftests/damon/config: remove configs for DAMON debugfs interface se=
lftests
      selftests/damon: remove tests for DAMON debugfs interface
      kunit: configs: remove configs for DAMON debugfs interface tests
      mm/damon: remove DAMON debugfs interface kunit tests
      mm/damon: remove DAMON debugfs interface
      mm/damon: fixup damos_filter kernel-doc
      mm/damon/core: add damos_filter->allow field
      mm/damon/core: support damos_filter->allow
      mm/damon/paddr: support damos_filter->allow
      mm/damon: add 'allow' argument to damos_new_filter()
      mm/damon/sysfs-schemes: add a file for setting damos_filter->allow
      Docs/mm/damon/design: document allow/reject DAMOS filter behaviors
      Docs/ABI/damon: document DAMOS filter allow sysfs file
      Docs/admin-guide/mm/damon/usage: omit DAMOS filter details in favor o=
f design doc
      Docs/admin-guide/mm/damon/usage: document DAMOS filter 'allow' sysfs =
file
      Docs/mm/damon/design: add monitoring parameters tuning guide
      Docs/mm/damon: add an example monitoring intervals tuning
      Docs/admin-guide/mm/damon/usage: fix and add missing DAMOS filter sys=
fs files on files hierarchy
      Docs/admin-guide/mm/damon/start: update snapshot example
      mm/damon: explain "effective quota" on kernel-doc comment

Sergey Senozhatsky (8):
      zram: free slot memory early during write
      zram: remove entry element member
      zram: factor out ZRAM_SAME write
      zram: factor out ZRAM_HUGE write
      zram: factor out different page types read
      zram: use zram_read_from_zspool() in writeback
      zram: cond_resched() in writeback loop
      zram: remove zcomp_stream_put() from write_incompressible_page()

Shakeel Butt (1):
      mm: mmap_lock: optimize mmap_lock tracepoints

Suren Baghdasaryan (6):
      seqlock: add raw_seqcount_try_begin
      mm: convert mm_lock_seq to a proper seqcount
      mm: introduce mmap_lock_speculate_{try_begin|retry}
      alloc_tag: avoid current->alloc_tag manipulations when profiling is d=
isabled
      seqlock: add missing parameter documentation for raw_seqcount_try_beg=
in()
      tools: add VM_WARN_ON_VMG definition

Thomas Wei=DFschuh (5):
      mm/page_idle: constify 'struct bin_attribute'
      selftests/mm: virtual_address_range: mmap() without PROT_WRITE
      selftests/mm: virtual_address_range: unmap chunks after validation
      selftests/mm: vm_util: split up /proc/self/smaps parsing
      selftests/mm: virtual_address_range: avoid reading from VM_IO mappings

Thorsten Blum (4):
      kasan: hw_tags: Use str_on_off() helper in kasan_init_hw_tags()
      mm/kfence: use str_write_read() helper in get_access_type()
      mm/damon/core: use str_high_low() helper in damos_wmark_wait_us()
      kasan: sw_tags: use str_on_off() helper in kasan_init_sw_tags()

Uros Bizjak (6):
      x86/kgdb: use IS_ERR_PCPU() macro
      compiler.h: introduce TYPEOF_UNQUAL() macro
      percpu: use TYPEOF_UNQUAL() in variable declarations
      percpu: use TYPEOF_UNQUAL() in *_cpu_ptr() accessors
      percpu: repurpose __percpu tag as a named address space qualifier
      percpu/x86: enable strict percpu checks via named AS qualifiers

Usama Arif (1):
      mm/damon/paddr: increment pa_stat damon address range by folio size

Wei Yang (7):
      maple_tree: use mas_next_slot() directly
      maple_tree: index has been checked to be smaller than pivot
      maple_tree: not possible to be a root node after loop
      maple_tree: we don't set offset to MAPLE_NODE_SLOTS on error
      maple_tree: simplify split calculation
      maple_tree: add a test check deficient node
      maple_tree: only root node could be deficient

Wenchao Hao (1):
      mm: add per-order mTHP swap-in fallback/fallback_charge counters

Yu Zhao (7):
      mm/mglru: clean up workingset
      mm/mglru: optimize deactivation
      mm/mglru: rework aging feedback
      mm/mglru: rework type selection
      mm/mglru: rework refault detection
      mm/mglru: rework workingset protection
      mm/mglru: fix PTE-mapped large folios

Yuntao Wang (1):
      mm/page_alloc: remove the incorrect and misleading comment

Zi Yan (2):
      selftests/mm: use selftests framework to print test result
      selftests/mm: add tests for splitting pmd THPs to all lower orders

gaoxiang17 (1):
      mm/page_alloc: add some detailed comments in can_steal_fallback

guanjing (1):
      selftests: mm: fix conversion specifiers in transact_test()

liuye (2):
      selftests/memfd/memfd_test: fix possible NULL pointer dereference
      selftests/mm/mkdirty: fix memory leak in test_uffdio_copy()

xu xin (1):
      ksm: add ksm involvement information for each process

yangge (1):
      mm: replace free hugepage folios after migration

 Documentation/ABI/testing/sysfs-kernel-mm-damon    |   26 +-
 Documentation/admin-guide/kernel-parameters.txt    |   11 +-
 Documentation/admin-guide/mm/damon/start.rst       |   67 +-
 Documentation/admin-guide/mm/damon/usage.rst       |  392 +-----
 Documentation/admin-guide/mm/memory-hotplug.rst    |    4 +-
 Documentation/admin-guide/mm/transhuge.rst         |   82 +-
 Documentation/filesystems/proc.rst                 |   88 +-
 Documentation/mm/damon/design.rst                  |  167 ++-
 .../damon/monitoring_intervals_tuning_example.rst  |  247 ++++
 Documentation/mm/process_addrs.rst                 |    4 +
 Documentation/mm/split_page_table_lock.rst         |    4 +-
 .../zh_CN/admin-guide/mm/damon/usage.rst           |  248 +---
 .../zh_TW/admin-guide/mm/damon/usage.rst           |  248 +---
 MAINTAINERS                                        |   24 +-
 arch/alpha/kernel/core_cia.c                       |    5 +-
 arch/alpha/kernel/core_marvel.c                    |   10 +-
 arch/alpha/kernel/pci.c                            |   13 +-
 arch/alpha/kernel/pci_iommu.c                      |   10 +-
 arch/alpha/mm/init.c                               |    2 +-
 arch/arc/include/asm/pgalloc.h                     |    9 +-
 arch/arm/include/asm/tlb.h                         |   10 -
 arch/arm/kernel/setup.c                            |   10 +-
 arch/arm/mm/mmu.c                                  |   17 +-
 arch/arm/mm/nommu.c                                |    5 +-
 arch/arm/mm/pgd.c                                  |   16 +-
 arch/arm64/include/asm/pgalloc.h                   |   18 -
 arch/arm64/include/asm/tlb.h                       |   21 +-
 arch/arm64/kernel/setup.c                          |    4 +-
 arch/arm64/mm/pgd.c                                |    4 +-
 arch/csky/include/asm/pgalloc.h                    |    4 +-
 arch/hexagon/include/asm/pgalloc.h                 |    4 +-
 arch/loongarch/configs/loongson3_defconfig         |    5 +-
 arch/loongarch/include/asm/pgalloc.h               |    2 +-
 arch/loongarch/kernel/setup.c                      |    2 +-
 arch/loongarch/mm/init.c                           |   13 +-
 arch/loongarch/mm/pgtable.c                        |    7 +-
 arch/m68k/include/asm/mcf_pgalloc.h                |    7 +-
 arch/m68k/include/asm/motorola_pgalloc.h           |    6 +-
 arch/m68k/include/asm/sun3_pgalloc.h               |    4 +-
 arch/m68k/mm/init.c                                |    5 +-
 arch/m68k/mm/mcfmmu.c                              |   10 +-
 arch/m68k/mm/motorola.c                            |   26 +-
 arch/m68k/mm/sun3mmu.c                             |   10 +-
 arch/m68k/sun3/sun3dvma.c                          |    6 +-
 arch/microblaze/include/asm/pgalloc.h              |    7 +-
 arch/mips/include/asm/pgalloc.h                    |    8 +-
 arch/mips/kernel/setup.c                           |    5 +-
 arch/mips/kernel/vdso.c                            |   10 +-
 arch/mips/mm/pgtable.c                             |    8 +-
 arch/nios2/include/asm/pgalloc.h                   |    2 +-
 arch/nios2/mm/pgtable.c                            |    3 +-
 arch/openrisc/include/asm/pgalloc.h                |    8 +-
 arch/openrisc/mm/ioremap.c                         |    5 +-
 arch/parisc/include/asm/pgalloc.h                  |   39 +-
 arch/parisc/mm/init.c                              |   20 +-
 arch/powerpc/include/asm/tlb.h                     |    1 +
 arch/powerpc/kernel/dt_cpu_ftrs.c                  |   10 +-
 arch/powerpc/kernel/pci_32.c                       |    5 +-
 arch/powerpc/kernel/setup-common.c                 |    5 +-
 arch/powerpc/kernel/setup_32.c                     |    8 +-
 arch/powerpc/mm/book3s32/mmu.c                     |    5 +-
 arch/powerpc/mm/book3s64/mmu_context.c             |    2 +-
 arch/powerpc/mm/book3s64/pgtable.c                 |    8 +-
 arch/powerpc/mm/kasan/init_book3e_64.c             |    8 +-
 arch/powerpc/mm/kasan/init_book3s_64.c             |    2 +-
 arch/powerpc/mm/nohash/mmu_context.c               |   16 +-
 arch/powerpc/mm/pgtable-frag.c                     |    4 +-
 arch/powerpc/mm/pgtable_32.c                       |    7 +-
 arch/powerpc/platforms/powermac/nvram.c            |    5 +-
 arch/powerpc/platforms/powernv/memtrace.c          |   31 +-
 arch/powerpc/platforms/powernv/opal.c              |    5 +-
 arch/powerpc/platforms/ps3/setup.c                 |    5 +-
 arch/powerpc/sysdev/msi_bitmap.c                   |    5 +-
 arch/riscv/include/asm/pgalloc.h                   |   72 +-
 arch/riscv/include/asm/tlb.h                       |   18 -
 arch/riscv/kernel/setup.c                          |    4 +-
 arch/riscv/mm/init.c                               |    4 +-
 arch/riscv/mm/kasan_init.c                         |   14 +-
 arch/s390/include/asm/pgalloc.h                    |   40 +-
 arch/s390/include/asm/tlb.h                        |   10 +-
 arch/s390/kernel/crash_dump.c                      |    4 +-
 arch/s390/kernel/numa.c                            |    8 +-
 arch/s390/kernel/setup.c                           |   20 +-
 arch/s390/kernel/smp.c                             |   11 +-
 arch/s390/kernel/topology.c                        |   10 +-
 arch/s390/mm/pgalloc.c                             |   23 +-
 arch/sh/include/asm/pgalloc.h                      |    2 +-
 arch/sh/mm/init.c                                  |   10 +-
 arch/sparc/include/asm/tlb_64.h                    |    1 +
 arch/sparc/kernel/prom_32.c                        |    4 +-
 arch/sparc/mm/init_64.c                            |    2 +-
 arch/sparc/mm/srmmu.c                              |   16 +-
 arch/um/drivers/net_kern.c                         |    5 +-
 arch/um/drivers/vector_kern.c                      |    5 +-
 arch/um/include/asm/pgalloc.h                      |    6 +-
 arch/um/kernel/load_file.c                         |    4 +-
 arch/um/kernel/mem.c                               |    7 +-
 arch/x86/Kconfig                                   |    1 +
 arch/x86/coco/sev/core.c                           |    4 +-
 arch/x86/include/asm/percpu.h                      |   38 +-
 arch/x86/include/asm/pgalloc.h                     |   18 -
 arch/x86/include/asm/tlb.h                         |   15 +-
 arch/x86/kernel/acpi/boot.c                        |    5 +-
 arch/x86/kernel/apic/io_apic.c                     |    9 +-
 arch/x86/kernel/e820.c                             |    5 +-
 arch/x86/kernel/kgdb.c                             |    2 +-
 arch/x86/kernel/paravirt.c                         |   12 +-
 arch/x86/kernel/setup.c                            |    5 +-
 arch/x86/mm/pgtable.c                              |   57 +-
 arch/x86/platform/olpc/olpc_dt.c                   |    6 +-
 arch/x86/xen/p2m.c                                 |    8 +-
 arch/xtensa/include/asm/pgalloc.h                  |    2 +-
 arch/xtensa/mm/kasan_init.c                        |    6 +-
 drivers/acpi/acpi_extlog.c                         |   14 +
 drivers/acpi/numa/srat.c                           |   86 ++
 drivers/base/memory.c                              |    4 +-
 drivers/block/zram/zram_drv.c                      |  300 +++--
 drivers/block/zram/zram_drv.h                      |    5 +-
 drivers/clk/ti/clk.c                               |    5 +-
 drivers/macintosh/smu.c                            |    6 +-
 drivers/of/fdt.c                                   |    8 +-
 drivers/of/unittest.c                              |    8 +-
 drivers/staging/media/atomisp/pci/hmm/hmm_bo.c     |    4 +-
 drivers/vfio/pci/mlx5/cmd.c                        |   14 +-
 drivers/vfio/pci/virtio/migrate.c                  |    6 +-
 fs/bcachefs/util.h                                 |    2 +-
 fs/btrfs/extent_io.c                               |    2 +-
 fs/btrfs/inode.c                                   |    1 -
 fs/erofs/zutil.c                                   |    4 +-
 fs/exec.c                                          |   14 +-
 fs/f2fs/data.c                                     |    1 -
 fs/hugetlbfs/inode.c                               |    7 +-
 fs/iomap/swapfile.c                                |    1 -
 fs/open.c                                          |    2 +-
 fs/proc/base.c                                     |   11 +
 fs/splice.c                                        |    2 +-
 fs/super.c                                         |    2 +-
 fs/xfs/xfs_buf.c                                   |    4 +-
 include/acpi/acpi_numa.h                           |    5 +
 include/asm-generic/early_ioremap.h                |    2 +-
 include/asm-generic/percpu.h                       |   39 +-
 include/asm-generic/pgalloc.h                      |   83 +-
 include/asm-generic/tlb.h                          |   24 +-
 include/linux/alloc_tag.h                          |   11 +-
 include/linux/bug.h                                |   10 +-
 include/linux/compiler.h                           |   13 +
 include/linux/compiler_types.h                     |    2 +-
 include/linux/damon.h                              |  112 +-
 include/linux/fs.h                                 |   21 +-
 include/linux/gfp.h                                |   30 +-
 include/linux/huge_mm.h                            |    2 +
 include/linux/hugetlb.h                            |   19 +-
 include/linux/kasan.h                              |    2 -
 include/linux/ksm.h                                |    1 +
 include/linux/list_lru.h                           |   44 +-
 include/linux/memblock.h                           |   10 +
 include/linux/memcontrol.h                         |   43 +-
 include/linux/memfd.h                              |   23 +-
 include/linux/memory_hotplug.h                     |    5 +-
 include/linux/migrate.h                            |    6 +-
 include/linux/mm.h                                 |  141 +--
 include/linux/mm_inline.h                          |   99 +-
 include/linux/mm_types.h                           |   11 +-
 include/linux/mmap_lock.h                          |   84 +-
 include/linux/mmdebug.h                            |   14 +-
 include/linux/mmzone.h                             |   99 +-
 include/linux/numa_memblks.h                       |    3 +
 include/linux/page-flags.h                         |   23 +-
 include/linux/page-isolation.h                     |    2 +-
 include/linux/pagemap.h                            |   24 +-
 include/linux/part_stat.h                          |    2 +-
 include/linux/percpu-defs.h                        |    6 +-
 include/linux/pgtable.h                            |    9 +-
 include/linux/sched/hotplug.h                      |    4 -
 include/linux/seqlock.h                            |   23 +
 include/linux/swap.h                               |   34 +-
 include/linux/swap_cgroup.h                        |   14 +-
 include/linux/swap_slots.h                         |    3 -
 include/linux/task_work.h                          |    3 -
 include/net/snmp.h                                 |    5 +-
 include/trace/events/mmap_lock.h                   |   32 +-
 include/trace/events/mmflags.h                     |    3 +-
 include/uapi/linux/fs.h                            |    6 +-
 init/Kconfig                                       |    3 +
 init/main.c                                        |   18 +-
 kernel/bpf/arena.c                                 |    2 +-
 kernel/cpu.c                                       |    9 +-
 kernel/fork.c                                      |    5 +-
 kernel/irq_work.c                                  |    2 +-
 kernel/locking/percpu-rwsem.c                      |    2 +-
 kernel/power/snapshot.c                            |    5 +-
 kernel/rcu/tiny.c                                  |    2 +-
 kernel/rcu/tree.c                                  |    4 +-
 kernel/sched/core.c                                |   24 +-
 kernel/task_work.c                                 |   14 +-
 kernel/workqueue.c                                 |    2 +-
 lib/alloc_tag.c                                    |    6 +-
 lib/cpumask.c                                      |    5 +-
 lib/kunit_iov_iter.c                               |    2 +-
 lib/list_debug.c                                   |   22 +-
 lib/maple_tree.c                                   |   73 +-
 lib/test_maple_tree.c                              |   56 +
 lib/test_vmalloc.c                                 |    2 +-
 mm/Kconfig                                         |   72 +-
 mm/Makefile                                        |    1 +
 mm/cma.h                                           |    2 +-
 mm/compaction.c                                    |    2 +
 mm/damon/Kconfig                                   |   30 -
 mm/damon/Makefile                                  |    1 -
 mm/damon/core.c                                    |  254 +++-
 mm/damon/dbgfs.c                                   | 1148 ----------------=
--
 mm/damon/paddr.c                                   |   80 +-
 mm/damon/reclaim.c                                 |    2 +-
 mm/damon/sysfs-common.h                            |   16 +-
 mm/damon/sysfs-schemes.c                           |  271 ++---
 mm/damon/sysfs.c                                   |  188 ++-
 mm/damon/tests/.kunitconfig                        |    7 -
 mm/damon/tests/core-kunit.h                        |   14 +-
 mm/damon/tests/dbgfs-kunit.h                       |  173 ---
 mm/damon/tests/vaddr-kunit.h                       |    2 +-
 mm/damon/vaddr.c                                   |    2 +-
 mm/debug.c                                         |   71 ++
 mm/early_ioremap.c                                 |    8 +-
 mm/filemap.c                                       |  121 +-
 mm/gup.c                                           |   93 +-
 mm/huge_memory.c                                   |   19 +-
 mm/hugetlb.c                                       |  417 ++++---
 mm/hugetlb_cgroup.c                                |   18 +-
 mm/init-mm.c                                       |    2 +-
 mm/internal.h                                      |   62 +-
 mm/kasan/generic.c                                 |   18 +-
 mm/kasan/hw_tags.c                                 |    5 +-
 mm/kasan/kasan.h                                   |   18 +-
 mm/kasan/kasan_test_c.c                            |    4 +-
 mm/kasan/sw_tags.c                                 |    3 +-
 mm/kfence/kfence_test.c                            |    3 +-
 mm/kfence/report.c                                 |    3 +-
 mm/khugepaged.c                                    |   45 +-
 mm/kmsan/shadow.c                                  |    8 +-
 mm/ksm.c                                           |   19 +
 mm/madvise.c                                       |    7 +-
 mm/memblock.c                                      |   20 +
 mm/memcontrol-v1.c                                 |   16 +-
 mm/memcontrol.c                                    |  114 +-
 mm/memfd.c                                         |  139 ++-
 mm/memory.c                                        |  267 +++--
 mm/memory_hotplug.c                                |   48 +-
 mm/mempolicy.c                                     |   83 +-
 mm/migrate.c                                       |  165 +--
 mm/mm_init.c                                       |    8 +-
 mm/mmap.c                                          |  575 ++-------
 mm/mmap_lock.c                                     |   50 +-
 mm/mmu_gather.c                                    |   25 +-
 mm/mseal.c                                         |    6 +-
 mm/numa.c                                          |    8 +-
 mm/numa_emulation.c                                |   45 +-
 mm/numa_memblks.c                                  |    2 +-
 mm/oom_kill.c                                      |    8 +-
 mm/page-writeback.c                                |   53 +-
 mm/page_alloc.c                                    |  179 +--
 mm/page_frag_cache.c                               |    6 +-
 mm/page_idle.c                                     |   10 +-
 mm/page_io.c                                       |    1 -
 mm/page_isolation.c                                |   12 +-
 mm/percpu.c                                        |   70 +-
 mm/pt_reclaim.c                                    |   71 ++
 mm/readahead.c                                     |   49 +-
 mm/rodata_test.c                                   |    7 +-
 mm/shmem.c                                         |  331 +++--
 mm/slub.c                                          |   12 +-
 mm/sparse-vmemmap.c                                |    5 +-
 mm/sparse.c                                        |    5 +-
 mm/swap.c                                          |   74 +-
 mm/swap_cgroup.c                                   |  233 ++--
 mm/swap_slots.c                                    |   78 +-
 mm/swap_state.c                                    |    1 -
 mm/swapfile.c                                      | 1261 +++++++++-------=
----
 mm/truncate.c                                      |   53 +-
 mm/userfaultfd.c                                   |   55 +-
 mm/util.c                                          |   17 +
 mm/vma.c                                           |  582 ++++++++-
 mm/vma.h                                           |   48 +-
 mm/vma_internal.h                                  |    1 +
 mm/vmalloc.c                                       |    4 +-
 mm/vmscan.c                                        |  507 ++++----
 mm/workingset.c                                    |   65 +-
 mm/zpdesc.h                                        |  182 +++
 mm/zsmalloc.c                                      |  440 +++----
 mm/zswap.c                                         |    2 +-
 net/core/page_pool.c                               |    7 +-
 net/mpls/internal.h                                |    4 +-
 net/sunrpc/svc.c                                   |    4 +-
 net/sunrpc/svc_xprt.c                              |    3 +-
 samples/Kconfig                                    |    2 +
 samples/Makefile                                   |    2 +
 samples/damon/Kconfig                              |   30 +
 samples/damon/Makefile                             |    4 +
 samples/damon/prcl.c                               |  136 +++
 samples/damon/wsse.c                               |  116 ++
 tools/testing/kunit/configs/all_tests.config       |    3 -
 tools/testing/selftests/damon/.gitignore           |    3 -
 tools/testing/selftests/damon/Makefile             |   11 +-
 tools/testing/selftests/damon/config               |    1 -
 tools/testing/selftests/damon/debugfs_attrs.sh     |   17 -
 .../damon/debugfs_duplicate_context_creation.sh    |   27 -
 .../selftests/damon/debugfs_empty_targets.sh       |   21 -
 .../damon/debugfs_huge_count_read_write.sh         |   22 -
 .../selftests/damon/debugfs_rm_non_contexts.sh     |   19 -
 tools/testing/selftests/damon/debugfs_schemes.sh   |   19 -
 .../testing/selftests/damon/debugfs_target_ids.sh  |   19 -
 .../selftests/damon/debugfs_target_ids_pid_leak.c  |   68 --
 .../selftests/damon/debugfs_target_ids_pid_leak.sh |   22 -
 ...debugfs_target_ids_read_before_terminate_race.c |   80 --
 ...ebugfs_target_ids_read_before_terminate_race.sh |   14 -
 .../selftests/damon/huge_count_read_write.c        |   46 -
 tools/testing/selftests/memfd/memfd_test.c         |    2 +-
 tools/testing/selftests/mm/.gitignore              |    5 +-
 tools/testing/selftests/mm/Makefile                |   16 +-
 tools/testing/selftests/mm/config                  |    1 +
 tools/testing/selftests/mm/cow.c                   |   10 +-
 tools/testing/selftests/mm/guard-pages.c           |   83 +-
 tools/testing/selftests/mm/ksm_tests.c             |    2 +-
 tools/testing/selftests/mm/migration.c             |   99 ++
 tools/testing/selftests/mm/mkdirty.c               |    1 +
 tools/testing/selftests/mm/mremap_test.c           |   17 +-
 tools/testing/selftests/mm/mseal_test.c            |    8 +-
 tools/testing/selftests/mm/pagemap_ioctl.c         |  118 +-
 tools/testing/selftests/mm/pkey-arm64.h            |    6 +-
 tools/testing/selftests/mm/pkey-helpers.h          |   61 +-
 tools/testing/selftests/mm/pkey-powerpc.h          |    4 +-
 tools/testing/selftests/mm/pkey-x86.h              |    6 +-
 tools/testing/selftests/mm/pkey_sighandler_tests.c |   32 +-
 tools/testing/selftests/mm/pkey_util.c             |   40 +
 tools/testing/selftests/mm/protection_keys.c       |  212 ++--
 tools/testing/selftests/mm/run_vmtests.sh          |    6 +
 tools/testing/selftests/mm/seal_elf.c              |  137 ---
 tools/testing/selftests/mm/soft-dirty.c            |    2 +-
 tools/testing/selftests/mm/split_huge_page_test.c  |   46 +-
 tools/testing/selftests/mm/thp_settings.c          |    4 +-
 tools/testing/selftests/mm/thp_settings.h          |    4 +-
 tools/testing/selftests/mm/uffd-unit-tests.c       |    4 +-
 tools/testing/selftests/mm/uffd-wp-mremap.c        |  380 ++++++
 tools/testing/selftests/mm/virtual_address_range.c |   41 +-
 tools/testing/selftests/mm/vm_util.c               |   68 +-
 tools/testing/selftests/mm/vm_util.h               |    1 +
 tools/testing/selftests/mm/write_to_hugetlbfs.c    |    2 +-
 tools/testing/vma/vma.c                            |   68 +-
 tools/testing/vma/vma_internal.h                   |  224 +++-
 348 files changed, 8159 insertions(+), 7992 deletions(-)
 create mode 100644 Documentation/mm/damon/monitoring_intervals_tuning_exam=
ple.rst
 delete mode 100644 mm/damon/dbgfs.c
 delete mode 100644 mm/damon/tests/dbgfs-kunit.h
 create mode 100644 mm/pt_reclaim.c
 create mode 100644 mm/zpdesc.h
 create mode 100644 samples/damon/Kconfig
 create mode 100644 samples/damon/Makefile
 create mode 100644 samples/damon/prcl.c
 create mode 100644 samples/damon/wsse.c
 delete mode 100755 tools/testing/selftests/damon/debugfs_attrs.sh
 delete mode 100755 tools/testing/selftests/damon/debugfs_duplicate_context=
_creation.sh
 delete mode 100755 tools/testing/selftests/damon/debugfs_empty_targets.sh
 delete mode 100755 tools/testing/selftests/damon/debugfs_huge_count_read_w=
rite.sh
 delete mode 100755 tools/testing/selftests/damon/debugfs_rm_non_contexts.sh
 delete mode 100755 tools/testing/selftests/damon/debugfs_schemes.sh
 delete mode 100755 tools/testing/selftests/damon/debugfs_target_ids.sh
 delete mode 100644 tools/testing/selftests/damon/debugfs_target_ids_pid_le=
ak.c
 delete mode 100755 tools/testing/selftests/damon/debugfs_target_ids_pid_le=
ak.sh
 delete mode 100644 tools/testing/selftests/damon/debugfs_target_ids_read_b=
efore_terminate_race.c
 delete mode 100755 tools/testing/selftests/damon/debugfs_target_ids_read_b=
efore_terminate_race.sh
 delete mode 100644 tools/testing/selftests/damon/huge_count_read_write.c
 create mode 100644 tools/testing/selftests/mm/pkey_util.c
 delete mode 100644 tools/testing/selftests/mm/seal_elf.c
 create mode 100644 tools/testing/selftests/mm/uffd-wp-mremap.c


.
Date: Fri, 24 Jan 2025 23:26:23 -0800
From: Andrew Morton <akpm@linux-foundation.org>
To: Linus Torvalds <torvalds@linux-foundation.org>
Cc: linux-mm@kvack.org, mm-commits@vger.kernel.org,
 linux-kernel@vger.kernel.org
Subject: [GIT PULL] non-MM updates for 6.14-rc1


Linus, please pull mm.git's non-MM updates for the 6.14 cycle, thanks.


Conflicts which I am seeing, along with their linux-next resolutions
are:

drivers/gpu/drm/i915/display/intel_display_driver.c, vs drm-intel tree:
https://lkml.kernel.org/r/20250106130348.73a5fae6@canb.auug.org.au

scripts/checkpatch.pl, vs jc_docs tree:
https://lkml.kernel.org/r/20250106095826.140c01cb@canb.auug.org.au


Forthcoming conflicts include:

kernel/auditsc.c vs security tree:
https://lkml.kernel.org/r/20241014144648.1923104a@canb.auug.org.au

security/lsm_audit.c vs security tree:
https://lkml.kernel.org/r/20241023123139.127ad800@canb.auug.org.au



The following changes since commit cd6313beaeaea0b2e6d428afef7a86a986b50abe:

  Revert "vmstat: disable vmstat_work on vmstat_cpu_down_prep()" (2025-01-06 06:10:24 -0800)

are available in the Git repository at:

  git://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm tags/mm-nonmm-stable-2025-01-24-23-16

for you to fetch changes up to beeba1eeec9c75d0a62335861ac175b9bdccfbd5:

  ocfs2: use str_yes_no() and str_no_yes() helper functions (2025-01-24 22:47:28 -0800)

----------------------------------------------------------------
Mainly individually changelogged singleton patches.  The patch series in
this pull are:

- "lib min_heap: Improve min_heap safety, testing, and documentation"
  from Kuan-Wei Chiu provides various tightenings to the min_heap library
  code.

- "xarray: extract __xa_cmpxchg_raw" from Tamir Duberstein preforms some
  cleanup and Rust preparation in the xarray library code.

- "Update reference to include/asm-<arch>" from Geert Uytterhoeven fixes
  pathnames in some code comments.

- "Converge on using secs_to_jiffies()" from Easwar Hariharan uses the
  new secs_to_jiffies() in various places where that is appropriate.

- "ocfs2, dlmfs: convert to the new mount API" from Eric Sandeen
  switches two filesystems to the new mount API.

- "Convert ocfs2 to use folios" from Matthew Wilcox does that.

- "Remove get_task_comm() and print task comm directly" from Yafang Shao
  removes now-unneeded calls to get_task_comm() in various places.

- "squashfs: reduce memory usage and update docs" from Phillip Lougher
  implements some memory savings in squashfs and performs some
  maintainability work.

- "lib: clarify comparison function requirements" from Kuan-Wei Chiu
  tightens the sort code's behaviour and adds some maintenance work.

- "nilfs2: protect busy buffer heads from being force-cleared" from
  Ryusuke Konishi fixes an issues in nlifs when the fs is presented with a
  corrupted image.

- "nilfs2: fix kernel-doc comments for function return values" from
  Ryusuke Konishi fixes some nilfs kerneldoc.

- "nilfs2: fix issues with rename operations" from Ryusuke Konishi
  addresses some nilfs BUG_ONs which syzbot was able to trigger.

- "minmax.h: Cleanups and minor optimisations" from David Laight
  does some maintenance work on the min/max library code.

- "Fixes and cleanups to xarray" from Kemeng Shi does maintenance work
  on the xarray library code.

----------------------------------------------------------------
Akinobu Mita (1):
      fault-inject: use prandom where cryptographically secure randomness is not needed

Ariel Otilibili (1):
      lib/inflate.c: remove dead code

Colin Ian King (1):
      scripts/spelling.txt: add more spellings to spelling.txt

Dan Carpenter (1):
      checkpatch: don't warn about extra parentheses in staging/

Daniel Yang (2):
      ocfs2: heartbeat: replace simple_strtoul with kstrtoul
      ocfs2: replace deprecated simple_strtol with kstrtol

David Laight (7):
      minmax.h: add whitespace around operators and after commas
      minmax.h: update some comments
      minmax.h: reduce the #define expansion of min(), max() and clamp()
      minmax.h: use BUILD_BUG_ON_MSG() for the lo < hi test in clamp()
      minmax.h: move all the clamp() definitions after the min/max() ones
      minmax.h: simplify the variants of clamp()
      minmax.h: remove some #defines that are only expanded once

David Reaver (1):
      checkpatch: remove migrated RCU APIs from deprecated_apis

Dmitry Antipov (1):
      ocfs2: miscellaneous spelling fixes

Dominik Karol Piątkowski (1):
      kasan: fix typo in kasan_poison_new_object documentation

Easwar Hariharan (18):
      netfilter: conntrack: cleanup timeout definitions
      coccinelle: misc: add secs_to_jiffies script
      arm: pxa: convert timeouts to use secs_to_jiffies()
      s390: kernel: convert timeouts to use secs_to_jiffies()
      powerpc/papr_scm: convert timeouts to secs_to_jiffies()
      mm: kmemleak: convert timeouts to secs_to_jiffies()
      accel/habanalabs: convert timeouts to secs_to_jiffies()
      drm/xe: convert timeout to secs_to_jiffies()
      scsi: lpfc: convert timeouts to secs_to_jiffies()
      scsi: arcmsr: convert timeouts to secs_to_jiffies()
      scsi: pm8001: convert timeouts to secs_to_jiffies()
      xen/blkback: convert timeouts to secs_to_jiffies()
      wifi: ath11k: convert timeouts to secs_to_jiffies()
      bluetooth: mgmt: convert timeouts to secs_to_jiffies()
      staging: vc04_services: convert timeouts to secs_to_jiffies()
      ceph: convert timeouts to secs_to_jiffies()
      livepatch: convert timeouts to secs_to_jiffies()
      ALSA: line6: convert timeouts to secs_to_jiffies()

Eric Sandeen (2):
      dlmfs: convert to the new mount API
      ocfs2: convert to the new mount API

Gao Xiang (1):
      include/linux/lz4.h: add some missing macros

Geert Uytterhoeven (2):
      checkpatch: update reference to include/asm-<arch>
      include: update references to include/asm-<arch>

Julian Sun (2):
      ocfs2: check el->l_next_free_rec in ocfs2_get_clusters_nocache
      ocfs2: correct l_next_free_rec in online check

Kemeng Shi (5):
      Xarray: do not return sibling entries from xas_find_marked()
      Xarray: move forward index correctly in xas_pause()
      Xarray: distinguish large entries correctly in xas_split_alloc()
      Xarray: remove repeat check in xas_squash_marks()
      Xarray: use xa_mark_t in xas_squash_marks() to keep code consistent

Kuan-Wei Chiu (6):
      lib min_heap: improve type safety in min_heap macros by using container_of
      lib/test_min_heap: use inline min heap variants to reduce attack vector
      lib min_heap: add brief introduction to Min Heap API
      Documentation/core-api: min_heap: add author information
      lib/sort: clarify comparison function requirements in sort_r()
      lib/list_sort: clarify comparison function requirements in list_sort()

Linus Lüssing (1):
      mailmap: update entry for Linus Lüssing

Luis Felipe Hernandez (1):
      lib/math: add int_sqrt test suite

Mark Tinguely (17):
      ocfs2: convert w_target_page to w_target_folio
      ocfs2: use a folio in ocfs2_zero_new_buffers()
      ocfs2: use a folio in ocfs2_write_begin_inline()
      ocfs2: convert ocfs2_readpage_inline() to take a folio
      ocfs2: convert ocfs2_inode_lock_with_page() to ocfs2_inode_lock_with_folio()
      ocfs2: convert w_pages to w_folios
      ocfs2: convert ocfs2_write_failure() to use a folio
      ocfs2: use a folio in ocfs2_write_end_nolock()
      ocfs2: use a folio in ocfs2_prepare_page_for_write()
      ocfs2: use a folio in ocfs2_map_and_dirty_page()
      ocfs2: convert ocfs2_map_page_blocks() to ocfs2_map_folio_blocks()
      ocfs2: convert ocfs2_clear_page_regions() to ocfs2_clear_folio_regions()
      ocfs2: use an array of folios instead of an array of pages
      ocfs2: convert ocfs2_duplicate_clusters_by_page() to use a folio
      ocfs2: convert ocfs2_map_and_dirty_page() to ocfs2_map_and_dirty_folio()
      ocfs2: support large folios in ocfs2_zero_cluster_folios()
      ocfs2: support large folios in ocfs2_write_zero_page()

Martin Kepplinger (1):
      init: fix removal warning for deprecated initrd loading

Mateusz Guzik (1):
      get_task_exe_file: check PF_KTHREAD locklessly

Matthew Wilcox (Oracle) (12):
      ocfs2: handle a symlink read error correctly
      ocfs2: convert ocfs2_page_mkwrite() to use a folio
      ocfs2: pass mmap_folio around instead of mmap_page
      ocfs2: convert ocfs2_read_inline_data() to take a folio
      ocfs2: use a folio in ocfs2_fast_symlink_read_folio()
      ocfs2: remove ocfs2_start_walk_page_trans() prototype
      iov_iter: remove setting of page->index
      squashfs: use a folio throughout squashfs_read_folio()
      squashfs: pass a folio to squashfs_readpage_fragment()
      squashfs: convert squashfs_readpage_block() to take a folio
      squashfs; convert squashfs_copy_cache() to take a folio
      squashfs: convert squashfs_fill_page() to take a folio

MengEn Sun (1):
      ucounts: move kfree() out of critical zone protected by ucounts_lock

Oxana Kharitonova (1):
      hung_task: add task->flags, blocked by coredump to log

Phillip Lougher (4):
      squashfs: make squashfs_cache_init() return ERR_PTR(-ENOMEM)
      squashfs: don't allocate read_page cache if SQUASHFS_FILE_DIRECT configured
      Documentation: update the Squashfs filesystem documentation
      squashfs: update Kconfig information

Pratyush Mittal (1):
      lib/rhashtable: fix the typo for preemptible

Randy Dunlap (3):
      latencytop: use correct kernel-doc format for func params
      gcov: clang: use correct function param names
      ipc/util.c: complete the kernel-doc function descriptions

Rob Herring (Arm) (1):
      MAINTAINERS: fix list entries with display names

Ryusuke Konishi (11):
      nilfs2: do not force clear folio if buffer is referenced
      nilfs2: protect access to buffers with no active references
      nilfs2: correct return value kernel-doc descriptions for ioctl functions
      nilfs2: correct return value kernel-doc descriptions for bmap functions
      nilfs2: correct return value kernel-doc descriptions for sufile
      nilfs2: correct return value kernel-doc descriptions for metadata files
      nilfs2: correct return value kernel-doc descriptions for the rest
      nilfs2: add missing return value kernel-doc descriptions
      nilfs2: revise the return value description style for consistency.
      nilfs2: handle errors that nilfs_prepare_chunk() may return
      nilfs2: do not update mtime of renamed directory that is not moved

Shivam Chaudhary (1):
      kernel-wide: add explicity||explicitly to spelling.txt

Su Yue (3):
      ocfs2: check tl->count of truncate log inode in ocfs2_get_truncate_log_info
      ocfs2: mark dquot as inactive if failed to start trans while releasing dquot
      ocfs2: remove parameter parent_fe_bh from __ocfs2_mknod_locked

Tamir Duberstein (5):
      xarray: extract xa_zero_to_null
      xarray: extract helper from __xa_{insert,cmpxchg}
      xarray: port tests to kunit
      checkpatch: check return of `git_commit_info`
      XArray: minor documentation improvements

Tanya Agarwal (1):
      CREDITS: fix spelling mistake

Thorsten Blum (2):
      alpha: remove duplicate included header file
      ocfs2: use str_yes_no() and str_no_yes() helper functions

Tio Zhang (1):
      kthread: correct comments before kthread_queue_work()

Wang Yaxin (2):
      delayacct: add delay max to record delay peak
      delayacct: add delay min to record delay peak

Yafang Shao (5):
      kernel: remove get_task_comm() and print task comm directly
      arch: remove get_task_comm() and print task comm directly
      net: remove get_task_comm() and print task comm directly
      security: remove get_task_comm() and print task comm directly
      drivers: remove get_task_comm() and print task comm directly

Yunhui Cui (1):
      watchdog: output this_cpu when printing hard LOCKUP

Zijun Hu (1):
      kernel/resource: simplify API __devm_release_region() implementation

pangliyuan (1):
      Squashfs: don't allocate fragment caches more than fragments

zhang jiao (1):
      tools/accounting/procacct: fix minor errors

 .mailmap                                           |   1 +
 CREDITS                                            |   2 +-
 Documentation/accounting/delay-accounting.rst      |  42 +-
 Documentation/core-api/min_heap.rst                |   2 +
 Documentation/core-api/xarray.rst                  |  24 +-
 Documentation/filesystems/squashfs.rst             |  14 +-
 MAINTAINERS                                        |  10 +-
 arch/alpha/lib/fpreg.c                             |   1 -
 arch/arc/kernel/unaligned.c                        |   5 +-
 arch/arm/mach-pxa/sharpsl_pm.c                     |   8 +-
 arch/m68k/configs/amiga_defconfig                  |   1 -
 arch/m68k/configs/apollo_defconfig                 |   1 -
 arch/m68k/configs/atari_defconfig                  |   1 -
 arch/m68k/configs/bvme6000_defconfig               |   1 -
 arch/m68k/configs/hp300_defconfig                  |   1 -
 arch/m68k/configs/mac_defconfig                    |   1 -
 arch/m68k/configs/multi_defconfig                  |   1 -
 arch/m68k/configs/mvme147_defconfig                |   1 -
 arch/m68k/configs/mvme16x_defconfig                |   1 -
 arch/m68k/configs/q40_defconfig                    |   1 -
 arch/m68k/configs/sun3_defconfig                   |   1 -
 arch/m68k/configs/sun3x_defconfig                  |   1 -
 arch/powerpc/configs/ppc64_defconfig               |   1 -
 arch/powerpc/kvm/book3s_hv.c                       |   2 +-
 arch/powerpc/platforms/pseries/papr_scm.c          |   2 +-
 arch/s390/kernel/lgr.c                             |   2 +-
 arch/s390/kernel/time.c                            |   4 +-
 arch/s390/kernel/topology.c                        |   2 +-
 arch/s390/mm/cmm.c                                 |   2 +-
 arch/x86/kernel/vm86_32.c                          |   5 +-
 drivers/accel/habanalabs/common/context.c          |   3 +-
 drivers/accel/habanalabs/common/device.c           |   2 +-
 drivers/accel/habanalabs/common/habanalabs_drv.c   |   3 +-
 drivers/accel/habanalabs/common/habanalabs_ioctl.c |  11 +-
 drivers/block/xen-blkback/blkback.c                |   2 +-
 .../gpu/drm/i915/display/intel_display_driver.c    |   6 +-
 drivers/gpu/drm/nouveau/nouveau_chan.c             |   4 +-
 drivers/gpu/drm/nouveau/nouveau_drm.c              |   5 +-
 drivers/gpu/drm/xe/xe_device.c                     |   2 +-
 drivers/infiniband/hw/hfi1/iowait.h                |   2 +-
 drivers/infiniband/hw/usnic/usnic_abi.h            |   2 +-
 drivers/net/wireless/ath/ath11k/debugfs.c          |   2 +-
 .../broadcom/brcm80211/brcmfmac/fwsignal.c         |   2 +-
 drivers/scsi/arcmsr/arcmsr_hba.c                   |   2 +-
 drivers/scsi/cxlflash/superpipe.c                  |   2 +-
 drivers/scsi/lpfc/lpfc_init.c                      |  18 +-
 drivers/scsi/lpfc/lpfc_nportdisc.c                 |   8 +-
 drivers/scsi/lpfc/lpfc_nvme.c                      |   2 +-
 drivers/scsi/lpfc/lpfc_sli.c                       |   4 +-
 drivers/scsi/lpfc/lpfc_vmid.c                      |   2 +-
 drivers/scsi/pm8001/pm8001_init.c                  |   2 +-
 .../vc04_services/bcm2835-audio/bcm2835-vchiq.c    |   2 +-
 drivers/tty/tty_io.c                               |   3 +-
 fs/ceph/quota.c                                    |   2 +-
 fs/erofs/decompressor.c                            |   7 -
 fs/nilfs2/alloc.c                                  |  67 +-
 fs/nilfs2/alloc.h                                  |   2 +
 fs/nilfs2/bmap.c                                   | 124 ++--
 fs/nilfs2/btnode.c                                 |   3 +-
 fs/nilfs2/btree.c                                  |   7 +-
 fs/nilfs2/cpfile.c                                 |  69 +-
 fs/nilfs2/dat.c                                    |  45 +-
 fs/nilfs2/dir.c                                    |  13 +-
 fs/nilfs2/gcinode.c                                |  24 +-
 fs/nilfs2/ifile.c                                  |  37 +-
 fs/nilfs2/inode.c                                  |  16 +-
 fs/nilfs2/ioctl.c                                  | 236 +++----
 fs/nilfs2/mdt.c                                    |  63 +-
 fs/nilfs2/namei.c                                  |  39 +-
 fs/nilfs2/nilfs.h                                  |   4 +-
 fs/nilfs2/page.c                                   |  39 +-
 fs/nilfs2/recovery.c                               |  62 +-
 fs/nilfs2/segbuf.c                                 |  12 +-
 fs/nilfs2/segment.c                                |  66 +-
 fs/nilfs2/sufile.c                                 | 112 ++--
 fs/nilfs2/sufile.h                                 |  22 +-
 fs/nilfs2/super.c                                  |  10 +-
 fs/nilfs2/the_nilfs.c                              |  26 +-
 fs/ocfs2/alloc.c                                   | 157 ++---
 fs/ocfs2/alloc.h                                   |   8 +-
 fs/ocfs2/aops.c                                    | 337 +++++-----
 fs/ocfs2/aops.h                                    |  17 +-
 fs/ocfs2/cluster/heartbeat.c                       |  28 +-
 fs/ocfs2/cluster/masklog.h                         |   2 +-
 fs/ocfs2/cluster/quorum.c                          |   6 +-
 fs/ocfs2/cluster/tcp.c                             |   8 +-
 fs/ocfs2/dlm/dlmapi.h                              |   2 +-
 fs/ocfs2/dlm/dlmdebug.c                            |   9 +-
 fs/ocfs2/dlm/dlmmaster.c                           |  12 +-
 fs/ocfs2/dlm/dlmrecovery.c                         |  13 +-
 fs/ocfs2/dlmfs/dlmfs.c                             |  23 +-
 fs/ocfs2/dlmglue.c                                 |  31 +-
 fs/ocfs2/dlmglue.h                                 |   6 +-
 fs/ocfs2/extent_map.c                              |  10 +
 fs/ocfs2/file.c                                    |   8 +-
 fs/ocfs2/inode.c                                   |  28 +-
 fs/ocfs2/ioctl.c                                   |   2 +-
 fs/ocfs2/journal.c                                 |   2 +-
 fs/ocfs2/mmap.c                                    |  18 +-
 fs/ocfs2/move_extents.c                            |   8 +-
 fs/ocfs2/namei.c                                   |   7 +-
 fs/ocfs2/ocfs2_fs.h                                |   8 +-
 fs/ocfs2/ocfs2_ioctl.h                             |   2 +-
 fs/ocfs2/ocfs2_lockid.h                            |   2 +-
 fs/ocfs2/ocfs2_trace.h                             |  20 +-
 fs/ocfs2/quota_global.c                            |   5 +
 fs/ocfs2/refcounttree.c                            |  41 +-
 fs/ocfs2/reservations.h                            |   4 +-
 fs/ocfs2/stack_o2cb.c                              |   2 +-
 fs/ocfs2/stackglue.h                               |   2 +-
 fs/ocfs2/super.c                                   | 591 ++++++++---------
 fs/ocfs2/symlink.c                                 |  16 +-
 fs/ocfs2/xattr.c                                   |  10 +-
 fs/squashfs/Kconfig                                |   6 +-
 fs/squashfs/cache.c                                |  10 +-
 fs/squashfs/file.c                                 |  90 +--
 fs/squashfs/file_cache.c                           |   6 +-
 fs/squashfs/file_direct.c                          |  11 +-
 fs/squashfs/squashfs.h                             |  13 +-
 fs/squashfs/super.c                                |  21 +-
 include/asm-generic/syscall.h                      |   2 +-
 include/linux/bitmap.h                             |   2 +-
 include/linux/delayacct.h                          |  14 +
 include/linux/kasan.h                              |   2 +-
 include/linux/lz4.h                                |   6 +
 include/linux/min_heap.h                           |  72 ++-
 include/linux/minmax.h                             | 205 +++---
 include/linux/sched.h                              |   6 +
 include/linux/types.h                              |   2 +-
 include/uapi/linux/taskstats.h                     |  17 +
 init/do_mounts_initrd.c                            |   2 +-
 ipc/util.c                                         |  11 +-
 kernel/capability.c                                |   8 +-
 kernel/delayacct.c                                 |  55 +-
 kernel/fork.c                                      |   9 +-
 kernel/futex/waitwake.c                            |   3 +-
 kernel/gcov/clang.c                                |   6 +-
 kernel/hung_task.c                                 |   2 +
 kernel/kthread.c                                   |   2 +-
 kernel/latencytop.c                                |   6 +-
 kernel/resource.c                                  |   3 +-
 kernel/sched/core.c                                |   4 +-
 kernel/sched/stats.h                               |   9 +-
 kernel/ucount.c                                    |   8 +-
 kernel/watchdog.c                                  |   2 +-
 lib/Kconfig.debug                                  |  34 +-
 lib/Makefile                                       |   2 +-
 lib/fault-inject.c                                 |  28 +-
 lib/inflate.c                                      |   2 -
 lib/kunit_iov_iter.c                               |   3 -
 lib/list_sort.c                                    |   7 +
 lib/lz4/lz4_compress.c                             |   1 -
 lib/lz4/lz4_decompress.c                           |   1 -
 lib/lz4/lz4defs.h                                  |   4 +-
 lib/lz4/lz4hc_compress.c                           |   1 -
 lib/math/Makefile                                  |   1 +
 lib/math/tests/Makefile                            |   1 +
 lib/math/tests/int_sqrt_kunit.c                    |  66 ++
 lib/rhashtable.c                                   |   2 +-
 lib/sort.c                                         |   7 +
 lib/test_min_heap.c                                |  30 +-
 lib/test_xarray.c                                  | 706 +++++++++++++--------
 lib/xarray.c                                       |  78 +--
 mm/kmemleak.c                                      |   4 +-
 net/bluetooth/mgmt.c                               |   2 +-
 net/netfilter/nf_conntrack_proto_sctp.c            |  21 +-
 net/wireless/wext-core.c                           |   4 +-
 samples/livepatch/livepatch-callbacks-busymod.c    |   3 +-
 samples/livepatch/livepatch-shadow-fix1.c          |   3 +-
 samples/livepatch/livepatch-shadow-mod.c           |  15 +-
 scripts/checkpatch.pl                              |  26 +-
 scripts/coccinelle/misc/secs_to_jiffies.cocci      |  22 +
 scripts/spelling.txt                               |  37 ++
 security/yama/yama_lsm.c                           |   4 +-
 sound/usb/line6/toneport.c                         |   2 +-
 tools/accounting/getdelays.c                       |  67 +-
 tools/accounting/procacct.c                        |   5 +-
 tools/testing/radix-tree/multiorder.c              |   4 +
 tools/testing/selftests/pidfd/pidfd_test.c         |   2 +-
 179 files changed, 2501 insertions(+), 2093 deletions(-)
 create mode 100644 lib/math/tests/int_sqrt_kunit.c
 create mode 100644 scripts/coccinelle/misc/secs_to_jiffies.cocci


.
Date: Sun, 26 Jan 2025 15:05:32 -0800
From: Andrew Morton <akpm@linux-foundation.org>
To: Linus Torvalds <torvalds@linux-foundation.org>
Cc: linux-kernel@vger.kernel.org, linux-mm@kvack.org,
 mm-commits@vger.kernel.org
Subject: [GIT PULL] MM udpates for 6.14-rc1, take 2

Linus, please merge the MM updates for the 6.14 development cycle,
thanks.

Conflicts which I am seeing at this time, along with their linux-next
resolutions are:

include/linux/seqlock.h: trivial kerneldoc fixup

kernel/rcu/tree.c, vs slab tree:
https://lkml.kernel.org/r/20241216152721.15c5864d@canb.auug.org.au


Forthcoming build issues and their linux-next resolutions are:

io_uring/memmap.c, vs block tree:
https://lkml.kernel.org/r/20250110124406.17190e3a@canb.auug.org.au


Forthcoming conflicts are:

kernel/rcu/tree.c, vs rcu tree:
https://lkml.kernel.org/r/20241220133738.1beae531@canb.auug.org.au

arch/arm64/mm/pageattr.c vs arm64 tree:
https://lkml.kernel.org/r/20241024103709.082a6950@canb.auug.org.au

include/linux/mm.h vs arm64 tree:
https://lkml.kernel.org/r/20241028111058.4419a9ed@canb.auug.org.au

arch/s390/include/asm/set_memory.h, arch/s390/mm/pageattr.c vs s390 tree:
https://lkml.kernel.org/r/20241028111606.5c009055@canb.auug.org.au

arch/s390/mm/pageattr.c, vs s390 tree:
https://lkml.kernel.org/r/20241114101639.282d82a8@canb.auug.org.au

lib/Makefile, vs asm-generic tree:
https://lkml.kernel.org/r/20241029095525.0fba9d23@canb.auug.org.au

drivers/block/zram/zram_drv.c, vs block tree:
https://lkml.kernel.org/r/20241111135241.1640f547@canb.auug.org.au

include/linux/mm.h
include/linux/mm_types.h
kernel/fork.c
tools/testing/vma/vma_internal.h, vs tip tree:
https://lkml.kernel.org/r/20241209132446.77fcb14b@canb.auug.org.au

(hopefully not an issue - both trees were carrying the same patches)

scripts/checkpatch.pl, vs jc_docs tree:
https://lkml.kernel.org/r/20250106095826.140c01cb@canb.auug.org.au

drivers/gpu/drm/i915/display/intel_display_driver.c, vs drm-intel tree:
https://lkml.kernel.org/r/20250106130348.73a5fae6@canb.auug.org.au

arch/powerpc/Kconfig, vs powerpc tree:
https://lkml.kernel.org/r/20250109104611.2491cc3b@canb.auug.org.au



The following changes since commit cbc5dde0a461240046e8a41c43d7c3b76d5db952:

  fs/proc: fix softlockup in __read_vmcore (part 2) (2025-01-12 19:03:38 -0=
800)

are available in the Git repository at:

  git://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm tags/mm-stable-2025=
-01-26-14-59

for you to fetch changes up to d1366e74342e75555af2648a2964deb2d5c92200:

  mm/compaction: fix UBSAN shift-out-of-bounds warning (2025-01-25 20:42:30=
 -0800)

----------------------------------------------------------------
The various patchsets are summarized below.  Plus of course many
indivudual patches which are described in their changelogs.

- "Allocate and free frozen pages" from Matthew Wilcox reorganizes the
  page allocator so we end up with the ability to allocate and free
  zero-refcount pages.  So that callers (ie, slab) can avoid a refcount
  inc & dec.

- "Support large folios for tmpfs" from Baolin Wang teaches tmpfs to use
  large folios other than PMD-sized ones.

- "Fix mm/rodata_test" from Petr Tesarik performs some maintenance and
  fixes for this small built-in kernel selftest.

- "mas_anode_descend() related cleanup" from Wei Yang tidies up part of
  the mapletree code.

- "mm: fix format issues and param types" from Keren Sun implements a
  few minor code cleanups.

- "simplify split calculation" from Wei Yang provides a few fixes and a
  test for the mapletree code.

- "mm/vma: make more mmap logic userland testable" from Lorenzo Stoakes
  continues the work of moving vma-related code into the (relatively) new
  mm/vma.c.

- "mm/page_alloc: gfp flags cleanups for alloc_contig_*()" from David
  Hildenbrand cleans up and rationalizes handling of gfp flags in the page
  allocator.

- "readahead: Reintroduce fix for improper RA window sizing" from Jan
  Kara is a second attempt at fixing a readahead window sizing issue.  It
  should reduce the amount of unnecessary reading.

- "synchronously scan and reclaim empty user PTE pages" from Qi Zheng
  addresses an issue where "huge" amounts of pte pagetables are
  accumulated
  (https://lore.kernel.org/lkml/cover.1718267194.git.zhengqi.arch@bytedance=
.com/).
  Qi's series addresses this windup by synchronously freeing PTE memory
  within the context of madvise(MADV_DONTNEED).

- "selftest/mm: Remove warnings found by adding compiler flags" from
  Muhammad Usama Anjum fixes some build warnings in the selftests code
  when optional compiler warnings are enabled.

- "mm: don't use __GFP_HARDWALL when migrating remote pages" from David
  Hildenbrand tightens the allocator's observance of __GFP_HARDWALL.

- "pkeys kselftests improvements" from Kevin Brodsky implements various
  fixes and cleanups in the MM selftests code, mainly pertaining to the
  pkeys tests.

- "mm/damon: add sample modules" from SeongJae Park enhances DAMON to
  estimate application working set size.

- "memcg/hugetlb: Rework memcg hugetlb charging" from Joshua Hahn
  provides some cleanups to memcg's hugetlb charging logic.

- "mm/swap_cgroup: remove global swap cgroup lock" from Kairui Song
  removes the global swap cgroup lock.  A speedup of 10% for a tmpfs-based
  kernel build was demonstrated.

- "zram: split page type read/write handling" from Sergey Senozhatsky
  has several fixes and cleaups for zram in the area of zram_write_page().
  A watchdog softlockup warning was eliminated.

- "move pagetable_*_dtor() to __tlb_remove_table()" from Kevin Brodsky
  cleans up the pagetable destructor implementations.  A rare
  use-after-free race is fixed.

- "mm/debug: introduce and use VM_WARN_ON_VMG()" from Lorenzo Stoakes
  simplifies and cleans up the debugging code in the VMA merging logic.

- "Account page tables at all levels" from Kevin Brodsky cleans up and
  regularizes the pagetable ctor/dtor handling.  This results in
  improvements in accounting accuracy.

- "mm/damon: replace most damon_callback usages in sysfs with new core
  functions" from SeongJae Park cleans up and generalizes DAMON's sysfs
  file interface logic.

- "mm/damon: enable page level properties based monitoring" from
  SeongJae Park increases the amount of information which is presented in
  response to DAMOS actions.

- "mm/damon: remove DAMON debugfs interface" from SeongJae Park removes
  DAMON's long-deprecated debugfs interfaces.  Thus the migration to sysfs
  is completed.

- "mm/hugetlb: Refactor hugetlb allocation resv accounting" from Peter
  Xu cleans up and generalizes the hugetlb reservation accounting.

- "mm: alloc_pages_bulk: small API refactor" from Luiz Capitulino
  removes a never-used feature of the alloc_pages_bulk() interface.

- "mm/damon: extend DAMOS filters for inclusion" from SeongJae Park
  extends DAMOS filters to support not only exclusion (rejecting), but
  also inclusion (allowing) behavior.

- "Add zpdesc memory descriptor for zswap.zpool" from Alex Shi
  "introduces a new memory descriptor for zswap.zpool that currently
  overlaps with struct page for now.  This is part of the effort to reduce
  the size of struct page and to enable dynamic allocation of memory
  descriptors."

- "mm, swap: rework of swap allocator locks" from Kairui Song redoes and
  simplifies the swap allocator locking.  A speedup of 400% was
  demonstrated for one workload.  As was a 35% reduction for kernel build
  time with swap-on-zram.

- "mm: update mips to use do_mmap(), make mmap_region() internal" from
  Lorenzo Stoakes reworks MIPS's use of mmap_region() so that
  mmap_region() can be made MM-internal.

- "mm/mglru: performance optimizations" from Yu Zhao fixes a few MGLRU
  regressions and otherwise improves MGLRU performance.

- "Docs/mm/damon: add tuning guide and misc updates" from SeongJae Park
  updates DAMON documentation.

- "Cleanup for memfd_create()" from Isaac Manjarres does that thing.

- "mm: hugetlb+THP folio and migration cleanups" from David Hildenbrand
  provides various cleanups in the areas of hugetlb folios, THP folios and
  migration.

- "Uncached buffered IO" from Jens Axboe implements the new
  RWF_DONTCACHE flag which provides synchronous dropbehind for pagecache
  reading and writing.  To permite userspace to address issues with
  massive buildup of useless pagecache when reading/writing fast devices.

- "selftests/mm: virtual_address_range: Reduce memory" from Thomas
  Wei=DFschuh fixes and optimizes some of the MM selftests.

----------------------------------------------------------------
Alex Shi (7):
      mm/zsmalloc: add zpdesc memory descriptor for zswap.zpool
      mm/zsmalloc: use zpdesc in trylock_zspage()/lock_zspage()
      mm/zsmalloc: convert create_page_chain() and its users to use zpdesc
      mm/zsmalloc: convert reset_page to reset_zpdesc
      mm/zsmalloc: convert SetZsPageMovable and remove unused funcs
      mm/zsmalloc: convert get/set_first_obj_offset() to take zpdesc
      mm/zsmalloc: introduce __zpdesc_clear/set_zsmalloc()

Alexander Gordeev (1):
      s390/mm: add missing ctor/dtor on page table upgrade

Alice Ryhl (2):
      mm/zswap: add LRU_STOP to comment about dropping the lru lock
      list_lru: expand list_lru_add() docs with info about sublists

Andrew Morton (3):
      mm/damon/tests/vaddr-kunit.h: reduce stack consumption
      mm/huge_memory.c: rename shadowed local
      Documentation/filesystems/proc.rst: fix possessive form of "process"

Baolin Wang (6):
      mm: factor out the order calculation into a new helper
      mm: shmem: change shmem_huge_global_enabled() to return huge order bi=
tmap
      mm: shmem: add large folio support for tmpfs
      mm: shmem: add a kernel command line to change the default huge polic=
y for tmpfs
      docs: tmpfs: drop 'fadvise()' from the documentation
      mm: shmem: skip swapcache for swapin of synchronous swap device

Bruno Faccini (1):
      mm/fake-numa: allow later numa node hotplug

Byungchul Park (1):
      mm: separate move/undo parts from migrate_pages_batch()

Chen Ridong (1):
      memcg: fix soft lockup in the OOM process

Chin Yik Ming (1):
      mm/memory: fix a comment typo in lock_mm_and_find_vma()

Christoph Hellwig (1):
      mm: unexport apply_to_existing_page_range

David Hildenbrand (17):
      docs: tmpfs: update the large folios policy for tmpfs and shmem
      mm/memory_hotplug: move debug_pagealloc_map_pages() into online_pages=
_range()
      mm/page_isolation: don't pass gfp flags to isolate_single_pageblock()
      mm/page_isolation: don't pass gfp flags to start_isolate_page_range()
      mm/page_alloc: make __alloc_contig_migrate_range() static
      mm/page_alloc: sort out the alloc_contig_range() gfp flags mess
      mm/page_alloc: forward the gfp flags from alloc_contig_range() to pos=
t_alloc_hook()
      powernv/memtrace: use __GFP_ZERO with alloc_contig_pages()
      mm/hugetlb: don't map folios writable without VM_WRITE when copying d=
uring fork()
      mm/page_alloc: don't use __GFP_HARDWALL when migrating pages via allo=
c_contig*()
      mm/memory_hotplug: don't use __GFP_HARDWALL when migrating pages via =
memory offlining
      mm/huge_memory: convert has_hwpoisoned into a pure folio flag
      mm/hugetlb: rename isolate_hugetlb() to folio_isolate_hugetlb()
      mm/migrate: don't call folio_putback_active_hugetlb() on dst hugetlb =
folio
      mm/hugetlb: rename folio_putback_active_hugetlb() to folio_putback_hu=
getlb()
      mm/hugetlb-cgroup: convert hugetlb_cgroup_css_offline() to work on fo=
lios
      mm/hugetlb: use folio->lru int demote_free_hugetlb_folios()

Donet Tom (2):
      mm: migrate: remove unused argument vma from migrate_misplaced_folio()
      selftests/mm: add new test cases to the migration test

Dr. David Alan Gilbert (1):
      filemap: remove unused folio_add_wait_queue

Gregory Price (1):
      mm: add build-time option for hotplug memory default online type

Guillaume Morin (1):
      mm/hugetlb: support FOLL_FORCE|FOLL_WRITE

Guo Weikang (4):
      mm/shmem: refactor to reuse vfs_parse_monolithic_sep for option parsi=
ng
      mm/early_ioremap: add null pointer checks to prevent NULL-pointer der=
eference
      mm/memmap: prevent double scanning of memmap by kmemleak
      mm/memblock: add memblock_alloc_or_panic interface

Hao Ge (1):
      selftests/mm/cow: modify the incorrect checking parameters

Honggyu Kim (1):
      mm/damon/core: remove duplicate list_empty quota->goals check

Hyeonggon Yoo (12):
      mm/migrate: remove slab checks in isolate_movable_page()
      mm/zsmalloc: convert __zs_map_object/__zs_unmap_object to use zpdesc
      mm/zsmalloc: add and use pfn/zpdesc seeking funcs
      mm/zsmalloc: convert obj_malloc() to use zpdesc
      mm/zsmalloc: convert obj_allocated() and related helpers to use zpdesc
      mm/zsmalloc: convert init_zspage() to use zpdesc
      mm/zsmalloc: convert obj_to_page() and zs_free() to use zpdesc
      mm/zsmalloc: add two helpers for zs_page_migrate() and make it use zp=
desc
      mm/zsmalloc: convert __free_zspage() to use zpdesc
      mm/zsmalloc: convert location_to_obj() to take zpdesc
      mm/zsmalloc: convert migrate_zspage() to use zpdesc
      mm/zsmalloc: convert get_zspage() to take zpdesc

Isaac J. Manjarres (2):
      mm/memfd: refactor and cleanup the logic in memfd_create()
      mm/memfd: use strncpy_from_user() to read memfd name

Jan Kara (2):
      readahead: don't shorten readahead window in read_pages()
      readahead: properly shorten readahead when falling back to do_page_ca=
che_ra()

Jeff Xu (2):
      selftest/mm: remove seal_elf
      mseal: remove can_do_mseal()

Jens Axboe (12):
      mm/filemap: change filemap_create_folio() to take a struct kiocb
      mm/filemap: use page_cache_sync_ra() to kick off read-ahead
      mm/readahead: add folio allocation helper
      mm: add PG_dropbehind folio flag
      mm/readahead: add readahead_control->dropbehind member
      mm/truncate: add folio_unmap_invalidate() helper
      fs: add RWF_DONTCACHE iocb and FOP_DONTCACHE file_operations flag
      mm/filemap: add read support for RWF_DONTCACHE
      mm/filemap: drop streaming/uncached pages when writeback completes
      mm/filemap: add filemap_fdatawrite_range_kick() helper
      mm: call filemap_fdatawrite_range_kick() after IOCB_DONTCACHE issue
      mm: add FGP_DONTCACHE folio creation flag

Jiale Yang (1):
      mm: change type of cma_area_count to unsigned int

Jim Zhao (1):
      mm/page-writeback: consolidate wb_thresh bumping logic into __wb_calc=
_thresh

Jinliang Zheng (1):
      mm: fix outdated incorrect code comments for handle_mm_fault()

Joshua Hahn (4):
      memcg/hugetlb: introduce memcg_accounts_hugetlb
      memcg/hugetlb: introduce mem_cgroup_charge_hugetlb
      memcg/hugetlb: remove memcg hugetlb try-commit-cancel protocol
      mm/damon/paddr: improve readability of damon_pa_stat

Kairui Song (17):
      mm, memcontrol: avoid duplicated memcg enable check
      mm/swap_cgroup: remove swap_cgroup_cmpxchg
      mm/swap_cgroup: remove global swap cgroup lock
      mm/swap_cgroup: decouple swap cgroup recording and clearing
      mm, swap: minor clean up for swap entry allocation
      mm, swap: fold swap_info_get_cont in the only caller
      mm, swap: remove old allocation path for HDD
      mm, swap: use cluster lock for HDD
      mm, swap: clean up device availability check
      mm, swap: clean up plist removal and adding
      mm, swap: hold a reference during scan and cleanup flag usage
      mm, swap: use an enum to define all cluster flags and wrap flags chan=
ges
      mm, swap: reduce contention on device lock
      mm, swap: simplify percpu cluster updating
      mm, swap: introduce a helper for retrieving cluster from offset
      mm, swap: use a global swap cluster for non-rotation devices
      mm, swap_slots: remove slot cache for freeing path

Keren Sun (3):
      mm: prefer 'unsigned int' to bare use of 'unsigned'
      mm: remove unnecessary whitespace before a quoted newline
      mm: remove the non-useful else after a break in a if statement

Kevin Brodsky (22):
      selftests/mm: fix condition in uffd_move_test_common()
      selftests/mm: fix -Wmaybe-uninitialized warnings
      selftests/mm: fix strncpy() length
      selftests/mm: fix -Warray-bounds warnings in pkey_sighandler_tests
      selftests/mm: build with -O2
      selftests/mm: remove unused pkey helpers
      selftests/mm: define types using typedef in pkey-helpers.h
      selftests/mm: ensure pkey-*.h define inline functions only
      selftests/mm: remove empty pkey helper definition
      selftests/mm: ensure non-global pkey symbols are marked static
      selftests/mm: use sys_pkey helpers consistently
      selftests/mm: rename pkey register macro
      selftests/mm: skip pkey_sighandler_tests if support is missing
      selftests/mm: remove X permission from sigaltstack mapping
      riscv: mm: skip pgtable level check in {pud,p4d}_alloc_one
      asm-generic: pgalloc: provide generic p4d_{alloc_one,free}
      mm: move common part of pagetable_*_ctor to helper
      parisc: mm: ensure pagetable_pmd_[cd]tor are called
      m68k: mm: add calls to pagetable_pmd_[cd]tor
      ARM: mm: rename PGD helpers
      asm-generic: pgalloc: provide generic __pgd_{alloc,free}
      mm: introduce ctor/dtor at PGD level

Koichiro Den (1):
      hugetlb: prioritize surplus allocation from current node

Li Zhijian (1):
      selftests/mm: add a few missing gitignore files

Liam R. Howlett (1):
      test_maple_tree: test exhausted upper limit of mtree_alloc_cyclic()

Liu Shixin (1):
      mm/compaction: fix UBSAN shift-out-of-bounds warning

Lorenzo Stoakes (16):
      mm/vma: move brk() internals to mm/vma.c
      mm/vma: move unmapped_area() internals to mm/vma.c
      mm: abstract get_arg_page() stack expansion and mmap read lock
      mm/vma: move stack expansion logic to mm/vma.c
      mm/vma: move __vm_munmap() to mm/vma.c
      selftests/mm: add fork CoW guard page test
      mm: enforce __must_check on VMA merge and split
      mm: perform all memfd seal checks in a single place
      MAINTAINERS: update MEMORY MAPPING section
      mm: assert mmap write lock held on do_mmap(), mmap_region()
      mm: add comments to do_mmap(), mmap_region() and vm_mmap()
      tools: testing: add simple __mmap_region() userland test
      mm/debug: introduce VM_WARN_ON_VMG() to dump VMA merge state
      mm/debug: prefer VM_WARN_ON_VMG() to report VMG debug warnings
      mips: vdso: prefer do_mmap() to mmap_region()
      mm: make mmap_region() internal

Luiz Capitulino (2):
      mm: alloc_pages_bulk_noprof: drop page_list argument
      mm: alloc_pages_bulk: rename API

Maninder Singh (1):
      lib/list_debug.c: add object information in case of invalid object

Matthew Wilcox (Oracle) (16):
      mm/page_alloc: cache page_zone() result in free_unref_page()
      mm: make alloc_pages_mpol() static
      mm/page_alloc: export free_frozen_pages() instead of free_unref_page()
      mm/page_alloc: move set_page_refcounted() to callers of post_alloc_ho=
ok()
      mm/page_alloc: move set_page_refcounted() to callers of prep_new_page=
()
      mm/page_alloc: move set_page_refcounted() to callers of get_page_from=
_freelist()
      mm/page_alloc: move set_page_refcounted() to callers of __alloc_pages=
_cpuset_fallback()
      mm/page_alloc: move set_page_refcounted() to callers of __alloc_pages=
_may_oom()
      mm/page_alloc: move set_page_refcounted() to callers of __alloc_pages=
_direct_compact()
      mm/page_alloc: move set_page_refcounted() to callers of __alloc_pages=
_direct_reclaim()
      mm/page_alloc: move set_page_refcounted() to callers of __alloc_pages=
_slowpath()
      mm/page_alloc: move set_page_refcounted() to end of __alloc_pages()
      mm/page_alloc: add __alloc_frozen_pages()
      mm/mempolicy: add alloc_frozen_pages()
      slab: allocate frozen pages
      mm: remove PageTransTail()

Muhammad Usama Anjum (4):
      selftests/mm: thp_settings: remove const from return type
      selftests/mm: pagemap_ioctl: Fix types mismatches shown by compiler o=
ptions
      selftests/mm: mseal_test: remove unused variables
      selftests/mm: mremap_test: Remove unused variable and type mismatches

Nicholas Piggin (1):
      lazy tlb: fix hotplug exit race with MMU_LAZY_TLB_SHOOTDOWN

Nihar Chaithanya (1):
      mm:kasan: fix sparse warnings: Should it be static?

Peter Xu (7):
      mm/hugetlb: fix avoid_reserve to allow taking folio from subpool
      mm/hugetlb: stop using avoid_reserve flag in fork()
      mm/hugetlb: rename avoid_reserve to cow_from_owner
      mm/hugetlb: clean up map/global resv accounting when allocate
      mm/hugetlb: simplify vma_has_reserves()
      mm/hugetlb: drop vma_has_reserves()
      mm/hugetlb: unify restore reserve accounting for new allocations

Peter Zijlstra (1):
      kasan: make kasan_record_aux_stack_noalloc() the default behaviour

Petr Tesarik (2):
      mm/rodata_test: use READ_ONCE() to read const variable
      mm/rodata_test: verify test data is unchanged, rather than non-zero

Pintu Kumar (1):
      mm/hugetlb_cgroup: avoid useless return in void function

Qi Zheng (26):
      mm: pgtable: make ptep_clear() non-atomic
      mm: khugepaged: recheck pmd state in retract_page_tables()
      mm: userfaultfd: recheck dst_pmd entry in move_pages_pte()
      mm: introduce zap_nonpresent_ptes()
      mm: introduce do_zap_pte_range()
      mm: skip over all consecutive none ptes in do_zap_pte_range()
      mm: zap_install_uffd_wp_if_needed: return whether uffd-wp pte has bee=
n re-installed
      mm: do_zap_pte_range: return any_skipped information to the caller
      mm: make zap_pte_range() handle full within-PMD range
      mm: pgtable: reclaim empty PTE page in madvise(MADV_DONTNEED)
      x86: mm: free page table pages by RCU instead of semi RCU
      x86: select ARCH_SUPPORTS_PT_RECLAIM if X86_64
      mm: pgtable: add statistics for P4D level page table
      arm64: pgtable: use mmu gather to free p4d level page table
      s390: pgtable: add statistics for PUD and P4D level page table
      mm: pgtable: introduce pagetable_dtor()
      arm: pgtable: move pagetable_dtor() to __tlb_remove_table()
      arm64: pgtable: move pagetable_dtor() to __tlb_remove_table()
      riscv: pgtable: move pagetable_dtor() to __tlb_remove_table()
      x86: pgtable: convert __tlb_remove_table() to use struct ptdesc
      x86: pgtable: move pagetable_dtor() to __tlb_remove_table()
      s390: pgtable: consolidate PxD and PTE TLB free paths
      mm: pgtable: introduce generic __tlb_remove_table()
      mm: pgtable: completely move pagetable_dtor() to generic tlb_remove_t=
able()
      mm: pgtable: move __tlb_remove_table_one() in x86 to generic file
      mm: pgtable: introduce generic pagetable_dtor_free()

Randy Dunlap (1):
      kasan: use correct kernel-doc format

Rik van Riel (1):
      mm: remove unnecessary calls to lru_add_drain

Roman Gushchin (2):
      mm: swap_cgroup: allocate swap_cgroup map using vcalloc()
      mm: swap_cgroup: get rid of __lookup_swap_cgroup()

Ryan Roberts (1):
      selftests/mm: introduce uffd-wp-mremap regression test

SeongJae Park (54):
      samples: add a skeleton of a sample DAMON module for working set size=
 estimation
      samples/damon/wsse: start and stop DAMON as the user requests
      samples/damon/wsse: implement working set size estimation and logging
      samples/damon: introduce a skeleton of a smaple DAMON module for proa=
ctive reclamation
      samples/damon/prcl: implement schemes setup
      mm/damon/sysfs-schemes: remove unnecessary schemes existence check in=
 damon_sysfs_schemes_clear_regions()
      mm/damon/sysfs: handle clear_schemes_tried_regions from DAMON sysfs c=
ontext
      mm/damon/core: introduce damon_call()
      mm/damon/sysfs: use damon_call() for update_schemes_stats
      mm/damon/sysfs: use damon_call() for commit_schemes_quota_goals
      mm/damon/sysfs: use damon_call() for update_schemes_effective_quotas
      mm/damon/core: implement damos_walk()
      Docs/mm/damon/design: document DAMOS regions walking
      mm/damon/sysfs: use damos_walk() for update_schemes_tried_{bytes,regi=
ons}
      mm/damon/sysfs: remove unused code for schemes tried regions update
      mm/damon: clarify trying vs applying on damos_stat kernel-doc comment
      Docs/mm/damon/design: add 'statistics' section
      Docs/admin-guide/mm/damon/usage: link damos stat design doc
      mm/damon: ask apply_scheme() to report filter-passed region-internal =
bytes
      mm/damon/paddr: report filter-passed bytes back for normal actions
      mm/damon/paddr: report filter-passed bytes back for DAMOS_STAT action
      mm/damon/core: implement per-scheme ops-handled filter-passed bytes s=
tat
      mm/damon/syfs-schemes: implement per-scheme filter-passed bytes stat
      Docs/mm/damon/design: document sz_ops_filter_passed
      Docs/admin-guide/mm/damon/usage: document sz_ops_filter_passed
      Docs/ABI/damon: document per-scheme filter-passed bytes stat file
      mm/damon/core: pass per-region filter-passed bytes to damos_walk_cont=
rol->walk_fn()
      mm/damon/sysfs-schemes: expose per-region filter-passed bytes
      Docs/mm/damon/design: document per-region sz_filter_passed stat
      Docs/admin-guide/mm/damon/usage: document sz_filtered_out of scheme t=
ried region directories
      Docs/ABI/damon: document per-region DAMOS filter-passed bytes stat fi=
le
      Docs/translations/*/admin-guide/mm/damon/usage: remove DAMON debugfs =
interface documentation
      Docs/admin-guide/mm/damon/usage: remove DAMON debugfs interface docum=
entation
      Docs/mm/damon/design: update for removal of DAMON debugfs interface
      selftests/damon/config: remove configs for DAMON debugfs interface se=
lftests
      selftests/damon: remove tests for DAMON debugfs interface
      kunit: configs: remove configs for DAMON debugfs interface tests
      mm/damon: remove DAMON debugfs interface kunit tests
      mm/damon: remove DAMON debugfs interface
      mm/damon: fixup damos_filter kernel-doc
      mm/damon/core: add damos_filter->allow field
      mm/damon/core: support damos_filter->allow
      mm/damon/paddr: support damos_filter->allow
      mm/damon: add 'allow' argument to damos_new_filter()
      mm/damon/sysfs-schemes: add a file for setting damos_filter->allow
      Docs/mm/damon/design: document allow/reject DAMOS filter behaviors
      Docs/ABI/damon: document DAMOS filter allow sysfs file
      Docs/admin-guide/mm/damon/usage: omit DAMOS filter details in favor o=
f design doc
      Docs/admin-guide/mm/damon/usage: document DAMOS filter 'allow' sysfs =
file
      Docs/mm/damon/design: add monitoring parameters tuning guide
      Docs/mm/damon: add an example monitoring intervals tuning
      Docs/admin-guide/mm/damon/usage: fix and add missing DAMOS filter sys=
fs files on files hierarchy
      Docs/admin-guide/mm/damon/start: update snapshot example
      mm/damon: explain "effective quota" on kernel-doc comment

Sergey Senozhatsky (8):
      zram: free slot memory early during write
      zram: remove entry element member
      zram: factor out ZRAM_SAME write
      zram: factor out ZRAM_HUGE write
      zram: factor out different page types read
      zram: use zram_read_from_zspool() in writeback
      zram: cond_resched() in writeback loop
      zram: remove zcomp_stream_put() from write_incompressible_page()

Shakeel Butt (1):
      mm: mmap_lock: optimize mmap_lock tracepoints

Suren Baghdasaryan (6):
      seqlock: add raw_seqcount_try_begin
      mm: convert mm_lock_seq to a proper seqcount
      mm: introduce mmap_lock_speculate_{try_begin|retry}
      alloc_tag: avoid current->alloc_tag manipulations when profiling is d=
isabled
      seqlock: add missing parameter documentation for raw_seqcount_try_beg=
in()
      tools: add VM_WARN_ON_VMG definition

Thomas Wei=DFschuh (5):
      mm/page_idle: constify 'struct bin_attribute'
      selftests/mm: virtual_address_range: mmap() without PROT_WRITE
      selftests/mm: virtual_address_range: unmap chunks after validation
      selftests/mm: vm_util: split up /proc/self/smaps parsing
      selftests/mm: virtual_address_range: avoid reading from VM_IO mappings

Thorsten Blum (4):
      kasan: hw_tags: Use str_on_off() helper in kasan_init_hw_tags()
      mm/kfence: use str_write_read() helper in get_access_type()
      mm/damon/core: use str_high_low() helper in damos_wmark_wait_us()
      kasan: sw_tags: use str_on_off() helper in kasan_init_sw_tags()

Usama Arif (1):
      mm/damon/paddr: increment pa_stat damon address range by folio size

Wei Yang (7):
      maple_tree: use mas_next_slot() directly
      maple_tree: index has been checked to be smaller than pivot
      maple_tree: not possible to be a root node after loop
      maple_tree: we don't set offset to MAPLE_NODE_SLOTS on error
      maple_tree: simplify split calculation
      maple_tree: add a test check deficient node
      maple_tree: only root node could be deficient

Wenchao Hao (1):
      mm: add per-order mTHP swap-in fallback/fallback_charge counters

Yu Zhao (7):
      mm/mglru: clean up workingset
      mm/mglru: optimize deactivation
      mm/mglru: rework aging feedback
      mm/mglru: rework type selection
      mm/mglru: rework refault detection
      mm/mglru: rework workingset protection
      mm/mglru: fix PTE-mapped large folios

Yuntao Wang (1):
      mm/page_alloc: remove the incorrect and misleading comment

Zi Yan (2):
      selftests/mm: use selftests framework to print test result
      selftests/mm: add tests for splitting pmd THPs to all lower orders

gaoxiang17 (1):
      mm/page_alloc: add some detailed comments in can_steal_fallback

guanjing (1):
      selftests: mm: fix conversion specifiers in transact_test()

liuye (2):
      selftests/memfd/memfd_test: fix possible NULL pointer dereference
      selftests/mm/mkdirty: fix memory leak in test_uffdio_copy()

xu xin (1):
      ksm: add ksm involvement information for each process

yangge (1):
      mm: replace free hugepage folios after migration

 Documentation/ABI/testing/sysfs-kernel-mm-damon    |   26 +-
 Documentation/admin-guide/kernel-parameters.txt    |   11 +-
 Documentation/admin-guide/mm/damon/start.rst       |   67 +-
 Documentation/admin-guide/mm/damon/usage.rst       |  392 +-----
 Documentation/admin-guide/mm/memory-hotplug.rst    |    4 +-
 Documentation/admin-guide/mm/transhuge.rst         |   82 +-
 Documentation/filesystems/proc.rst                 |   88 +-
 Documentation/mm/damon/design.rst                  |  167 ++-
 .../damon/monitoring_intervals_tuning_example.rst  |  247 ++++
 Documentation/mm/process_addrs.rst                 |    4 +
 Documentation/mm/split_page_table_lock.rst         |    4 +-
 .../zh_CN/admin-guide/mm/damon/usage.rst           |  248 +---
 .../zh_TW/admin-guide/mm/damon/usage.rst           |  248 +---
 MAINTAINERS                                        |   24 +-
 arch/alpha/kernel/core_cia.c                       |    5 +-
 arch/alpha/kernel/core_marvel.c                    |   10 +-
 arch/alpha/kernel/pci.c                            |   13 +-
 arch/alpha/kernel/pci_iommu.c                      |   10 +-
 arch/alpha/mm/init.c                               |    2 +-
 arch/arc/include/asm/pgalloc.h                     |    9 +-
 arch/arm/include/asm/tlb.h                         |   10 -
 arch/arm/kernel/setup.c                            |   10 +-
 arch/arm/mm/mmu.c                                  |   17 +-
 arch/arm/mm/nommu.c                                |    5 +-
 arch/arm/mm/pgd.c                                  |   16 +-
 arch/arm64/include/asm/pgalloc.h                   |   18 -
 arch/arm64/include/asm/tlb.h                       |   21 +-
 arch/arm64/kernel/setup.c                          |    4 +-
 arch/arm64/mm/pgd.c                                |    4 +-
 arch/csky/include/asm/pgalloc.h                    |    4 +-
 arch/hexagon/include/asm/pgalloc.h                 |    4 +-
 arch/loongarch/configs/loongson3_defconfig         |    5 +-
 arch/loongarch/include/asm/pgalloc.h               |    2 +-
 arch/loongarch/kernel/setup.c                      |    2 +-
 arch/loongarch/mm/init.c                           |   13 +-
 arch/loongarch/mm/pgtable.c                        |    7 +-
 arch/m68k/include/asm/mcf_pgalloc.h                |    7 +-
 arch/m68k/include/asm/motorola_pgalloc.h           |    6 +-
 arch/m68k/include/asm/sun3_pgalloc.h               |    4 +-
 arch/m68k/mm/init.c                                |    5 +-
 arch/m68k/mm/mcfmmu.c                              |   10 +-
 arch/m68k/mm/motorola.c                            |   26 +-
 arch/m68k/mm/sun3mmu.c                             |   10 +-
 arch/m68k/sun3/sun3dvma.c                          |    6 +-
 arch/microblaze/include/asm/pgalloc.h              |    7 +-
 arch/mips/include/asm/pgalloc.h                    |    8 +-
 arch/mips/kernel/setup.c                           |    5 +-
 arch/mips/kernel/vdso.c                            |   10 +-
 arch/mips/mm/pgtable.c                             |    8 +-
 arch/nios2/include/asm/pgalloc.h                   |    2 +-
 arch/nios2/mm/pgtable.c                            |    3 +-
 arch/openrisc/include/asm/pgalloc.h                |    8 +-
 arch/openrisc/mm/ioremap.c                         |    5 +-
 arch/parisc/include/asm/pgalloc.h                  |   39 +-
 arch/parisc/mm/init.c                              |   20 +-
 arch/powerpc/include/asm/tlb.h                     |    1 +
 arch/powerpc/kernel/dt_cpu_ftrs.c                  |   10 +-
 arch/powerpc/kernel/pci_32.c                       |    5 +-
 arch/powerpc/kernel/setup-common.c                 |    5 +-
 arch/powerpc/kernel/setup_32.c                     |    8 +-
 arch/powerpc/mm/book3s32/mmu.c                     |    5 +-
 arch/powerpc/mm/book3s64/mmu_context.c             |    2 +-
 arch/powerpc/mm/book3s64/pgtable.c                 |    8 +-
 arch/powerpc/mm/kasan/init_book3e_64.c             |    8 +-
 arch/powerpc/mm/kasan/init_book3s_64.c             |    2 +-
 arch/powerpc/mm/nohash/mmu_context.c               |   16 +-
 arch/powerpc/mm/pgtable-frag.c                     |    4 +-
 arch/powerpc/mm/pgtable_32.c                       |    7 +-
 arch/powerpc/platforms/powermac/nvram.c            |    5 +-
 arch/powerpc/platforms/powernv/memtrace.c          |   31 +-
 arch/powerpc/platforms/powernv/opal.c              |    5 +-
 arch/powerpc/platforms/ps3/setup.c                 |    5 +-
 arch/powerpc/sysdev/msi_bitmap.c                   |    5 +-
 arch/riscv/include/asm/pgalloc.h                   |   72 +-
 arch/riscv/include/asm/tlb.h                       |   18 -
 arch/riscv/kernel/setup.c                          |    4 +-
 arch/riscv/mm/init.c                               |    4 +-
 arch/riscv/mm/kasan_init.c                         |   14 +-
 arch/s390/include/asm/pgalloc.h                    |   40 +-
 arch/s390/include/asm/tlb.h                        |   10 +-
 arch/s390/kernel/crash_dump.c                      |    4 +-
 arch/s390/kernel/numa.c                            |    8 +-
 arch/s390/kernel/setup.c                           |   20 +-
 arch/s390/kernel/smp.c                             |   11 +-
 arch/s390/kernel/topology.c                        |   10 +-
 arch/s390/mm/pgalloc.c                             |   26 +-
 arch/sh/include/asm/pgalloc.h                      |    2 +-
 arch/sh/mm/init.c                                  |   10 +-
 arch/sparc/include/asm/tlb_64.h                    |    1 +
 arch/sparc/kernel/prom_32.c                        |    4 +-
 arch/sparc/mm/init_64.c                            |    2 +-
 arch/sparc/mm/srmmu.c                              |   16 +-
 arch/um/drivers/net_kern.c                         |    5 +-
 arch/um/drivers/vector_kern.c                      |    5 +-
 arch/um/include/asm/pgalloc.h                      |    6 +-
 arch/um/kernel/load_file.c                         |    4 +-
 arch/um/kernel/mem.c                               |    7 +-
 arch/x86/Kconfig                                   |    1 +
 arch/x86/coco/sev/core.c                           |    4 +-
 arch/x86/include/asm/pgalloc.h                     |   18 -
 arch/x86/include/asm/tlb.h                         |   15 +-
 arch/x86/kernel/acpi/boot.c                        |    5 +-
 arch/x86/kernel/apic/io_apic.c                     |    9 +-
 arch/x86/kernel/e820.c                             |    5 +-
 arch/x86/kernel/paravirt.c                         |   12 +-
 arch/x86/kernel/setup.c                            |    5 +-
 arch/x86/mm/pgtable.c                              |   57 +-
 arch/x86/platform/olpc/olpc_dt.c                   |    6 +-
 arch/x86/xen/p2m.c                                 |    8 +-
 arch/xtensa/include/asm/pgalloc.h                  |    2 +-
 arch/xtensa/mm/kasan_init.c                        |    6 +-
 drivers/acpi/acpi_extlog.c                         |   14 +
 drivers/acpi/numa/srat.c                           |   86 ++
 drivers/base/memory.c                              |    4 +-
 drivers/block/zram/zram_drv.c                      |  300 +++--
 drivers/block/zram/zram_drv.h                      |    5 +-
 drivers/clk/ti/clk.c                               |    5 +-
 drivers/macintosh/smu.c                            |    6 +-
 drivers/of/fdt.c                                   |    8 +-
 drivers/of/unittest.c                              |    8 +-
 drivers/staging/media/atomisp/pci/hmm/hmm_bo.c     |    4 +-
 drivers/vfio/pci/mlx5/cmd.c                        |   14 +-
 drivers/vfio/pci/virtio/migrate.c                  |    6 +-
 fs/btrfs/extent_io.c                               |    2 +-
 fs/btrfs/inode.c                                   |    1 -
 fs/erofs/zutil.c                                   |    4 +-
 fs/exec.c                                          |   14 +-
 fs/f2fs/data.c                                     |    1 -
 fs/hugetlbfs/inode.c                               |    7 +-
 fs/iomap/swapfile.c                                |    1 -
 fs/open.c                                          |    2 +-
 fs/proc/base.c                                     |   11 +
 fs/splice.c                                        |    2 +-
 fs/super.c                                         |    2 +-
 fs/xfs/xfs_buf.c                                   |    4 +-
 include/acpi/acpi_numa.h                           |    5 +
 include/asm-generic/early_ioremap.h                |    2 +-
 include/asm-generic/pgalloc.h                      |   83 +-
 include/asm-generic/tlb.h                          |   24 +-
 include/linux/alloc_tag.h                          |   11 +-
 include/linux/bug.h                                |   10 +-
 include/linux/damon.h                              |  112 +-
 include/linux/fs.h                                 |   21 +-
 include/linux/gfp.h                                |   30 +-
 include/linux/huge_mm.h                            |    2 +
 include/linux/hugetlb.h                            |   19 +-
 include/linux/kasan.h                              |    2 -
 include/linux/ksm.h                                |    1 +
 include/linux/list_lru.h                           |   44 +-
 include/linux/memblock.h                           |   10 +
 include/linux/memcontrol.h                         |   43 +-
 include/linux/memfd.h                              |   23 +-
 include/linux/memory_hotplug.h                     |    5 +-
 include/linux/migrate.h                            |    6 +-
 include/linux/mm.h                                 |  141 +--
 include/linux/mm_inline.h                          |   99 +-
 include/linux/mm_types.h                           |   11 +-
 include/linux/mmap_lock.h                          |   84 +-
 include/linux/mmdebug.h                            |   14 +-
 include/linux/mmzone.h                             |   99 +-
 include/linux/numa_memblks.h                       |    3 +
 include/linux/page-flags.h                         |   23 +-
 include/linux/page-isolation.h                     |    2 +-
 include/linux/pagemap.h                            |   24 +-
 include/linux/pgtable.h                            |    9 +-
 include/linux/sched/hotplug.h                      |    4 -
 include/linux/seqlock.h                            |   23 +
 include/linux/swap.h                               |   34 +-
 include/linux/swap_cgroup.h                        |   14 +-
 include/linux/swap_slots.h                         |    3 -
 include/linux/task_work.h                          |    3 -
 include/trace/events/mmap_lock.h                   |   32 +-
 include/trace/events/mmflags.h                     |    3 +-
 include/uapi/linux/fs.h                            |    6 +-
 init/main.c                                        |   18 +-
 kernel/bpf/arena.c                                 |    2 +-
 kernel/cpu.c                                       |    9 +-
 kernel/fork.c                                      |    5 +-
 kernel/irq_work.c                                  |    2 +-
 kernel/power/snapshot.c                            |    5 +-
 kernel/rcu/tiny.c                                  |    2 +-
 kernel/rcu/tree.c                                  |    4 +-
 kernel/sched/core.c                                |   24 +-
 kernel/task_work.c                                 |   14 +-
 kernel/workqueue.c                                 |    2 +-
 lib/alloc_tag.c                                    |    6 +-
 lib/cpumask.c                                      |    5 +-
 lib/kunit_iov_iter.c                               |    2 +-
 lib/list_debug.c                                   |   22 +-
 lib/maple_tree.c                                   |   73 +-
 lib/test_maple_tree.c                              |   56 +
 lib/test_vmalloc.c                                 |    2 +-
 mm/Kconfig                                         |   72 +-
 mm/Makefile                                        |    1 +
 mm/cma.h                                           |    2 +-
 mm/compaction.c                                    |    5 +-
 mm/damon/Kconfig                                   |   30 -
 mm/damon/Makefile                                  |    1 -
 mm/damon/core.c                                    |  254 +++-
 mm/damon/dbgfs.c                                   | 1148 ----------------=
--
 mm/damon/paddr.c                                   |   80 +-
 mm/damon/reclaim.c                                 |    2 +-
 mm/damon/sysfs-common.h                            |   16 +-
 mm/damon/sysfs-schemes.c                           |  271 ++---
 mm/damon/sysfs.c                                   |  188 ++-
 mm/damon/tests/.kunitconfig                        |    7 -
 mm/damon/tests/core-kunit.h                        |   14 +-
 mm/damon/tests/dbgfs-kunit.h                       |  173 ---
 mm/damon/tests/vaddr-kunit.h                       |    2 +-
 mm/damon/vaddr.c                                   |    2 +-
 mm/debug.c                                         |   71 ++
 mm/early_ioremap.c                                 |    8 +-
 mm/filemap.c                                       |  121 +-
 mm/gup.c                                           |   93 +-
 mm/huge_memory.c                                   |   19 +-
 mm/hugetlb.c                                       |  417 ++++---
 mm/hugetlb_cgroup.c                                |   18 +-
 mm/init-mm.c                                       |    2 +-
 mm/internal.h                                      |   62 +-
 mm/kasan/generic.c                                 |   18 +-
 mm/kasan/hw_tags.c                                 |    5 +-
 mm/kasan/kasan.h                                   |   18 +-
 mm/kasan/kasan_test_c.c                            |    4 +-
 mm/kasan/sw_tags.c                                 |    3 +-
 mm/kfence/kfence_test.c                            |    3 +-
 mm/kfence/report.c                                 |    3 +-
 mm/khugepaged.c                                    |   45 +-
 mm/kmsan/shadow.c                                  |    8 +-
 mm/ksm.c                                           |   19 +
 mm/madvise.c                                       |    7 +-
 mm/memblock.c                                      |   20 +
 mm/memcontrol-v1.c                                 |   16 +-
 mm/memcontrol.c                                    |  114 +-
 mm/memfd.c                                         |  139 ++-
 mm/memory.c                                        |  267 +++--
 mm/memory_hotplug.c                                |   48 +-
 mm/mempolicy.c                                     |   83 +-
 mm/migrate.c                                       |  165 +--
 mm/mm_init.c                                       |    8 +-
 mm/mmap.c                                          |  575 ++-------
 mm/mmap_lock.c                                     |   50 +-
 mm/mmu_gather.c                                    |   25 +-
 mm/mseal.c                                         |    6 +-
 mm/numa.c                                          |    8 +-
 mm/numa_emulation.c                                |   45 +-
 mm/numa_memblks.c                                  |    2 +-
 mm/oom_kill.c                                      |    8 +-
 mm/page-writeback.c                                |   53 +-
 mm/page_alloc.c                                    |  179 +--
 mm/page_frag_cache.c                               |    6 +-
 mm/page_idle.c                                     |   10 +-
 mm/page_io.c                                       |    1 -
 mm/page_isolation.c                                |   12 +-
 mm/percpu.c                                        |   70 +-
 mm/pt_reclaim.c                                    |   71 ++
 mm/readahead.c                                     |   49 +-
 mm/rodata_test.c                                   |    7 +-
 mm/shmem.c                                         |  331 +++--
 mm/slub.c                                          |   12 +-
 mm/sparse-vmemmap.c                                |    5 +-
 mm/sparse.c                                        |    5 +-
 mm/swap.c                                          |   74 +-
 mm/swap_cgroup.c                                   |  233 ++--
 mm/swap_slots.c                                    |   78 +-
 mm/swap_state.c                                    |    1 -
 mm/swapfile.c                                      | 1261 +++++++++-------=
----
 mm/truncate.c                                      |   53 +-
 mm/userfaultfd.c                                   |   55 +-
 mm/util.c                                          |   17 +
 mm/vma.c                                           |  582 ++++++++-
 mm/vma.h                                           |   48 +-
 mm/vma_internal.h                                  |    1 +
 mm/vmalloc.c                                       |    4 +-
 mm/vmscan.c                                        |  507 ++++----
 mm/workingset.c                                    |   65 +-
 mm/zpdesc.h                                        |  182 +++
 mm/zsmalloc.c                                      |  440 +++----
 mm/zswap.c                                         |    2 +-
 net/core/page_pool.c                               |    7 +-
 net/sunrpc/svc.c                                   |    4 +-
 net/sunrpc/svc_xprt.c                              |    3 +-
 samples/Kconfig                                    |    2 +
 samples/Makefile                                   |    2 +
 samples/damon/Kconfig                              |   30 +
 samples/damon/Makefile                             |    4 +
 samples/damon/prcl.c                               |  136 +++
 samples/damon/wsse.c                               |  116 ++
 tools/testing/kunit/configs/all_tests.config       |    3 -
 tools/testing/selftests/damon/.gitignore           |    3 -
 tools/testing/selftests/damon/Makefile             |   11 +-
 tools/testing/selftests/damon/config               |    1 -
 tools/testing/selftests/damon/debugfs_attrs.sh     |   17 -
 .../damon/debugfs_duplicate_context_creation.sh    |   27 -
 .../selftests/damon/debugfs_empty_targets.sh       |   21 -
 .../damon/debugfs_huge_count_read_write.sh         |   22 -
 .../selftests/damon/debugfs_rm_non_contexts.sh     |   19 -
 tools/testing/selftests/damon/debugfs_schemes.sh   |   19 -
 .../testing/selftests/damon/debugfs_target_ids.sh  |   19 -
 .../selftests/damon/debugfs_target_ids_pid_leak.c  |   68 --
 .../selftests/damon/debugfs_target_ids_pid_leak.sh |   22 -
 ...debugfs_target_ids_read_before_terminate_race.c |   80 --
 ...ebugfs_target_ids_read_before_terminate_race.sh |   14 -
 .../selftests/damon/huge_count_read_write.c        |   46 -
 tools/testing/selftests/memfd/memfd_test.c         |    2 +-
 tools/testing/selftests/mm/.gitignore              |    5 +-
 tools/testing/selftests/mm/Makefile                |   16 +-
 tools/testing/selftests/mm/config                  |    1 +
 tools/testing/selftests/mm/cow.c                   |   10 +-
 tools/testing/selftests/mm/guard-pages.c           |   83 +-
 tools/testing/selftests/mm/ksm_tests.c             |    2 +-
 tools/testing/selftests/mm/migration.c             |   99 ++
 tools/testing/selftests/mm/mkdirty.c               |    1 +
 tools/testing/selftests/mm/mremap_test.c           |   17 +-
 tools/testing/selftests/mm/mseal_test.c            |    8 +-
 tools/testing/selftests/mm/pagemap_ioctl.c         |  118 +-
 tools/testing/selftests/mm/pkey-arm64.h            |    6 +-
 tools/testing/selftests/mm/pkey-helpers.h          |   61 +-
 tools/testing/selftests/mm/pkey-powerpc.h          |    4 +-
 tools/testing/selftests/mm/pkey-x86.h              |    6 +-
 tools/testing/selftests/mm/pkey_sighandler_tests.c |   32 +-
 tools/testing/selftests/mm/pkey_util.c             |   40 +
 tools/testing/selftests/mm/protection_keys.c       |  212 ++--
 tools/testing/selftests/mm/run_vmtests.sh          |    6 +
 tools/testing/selftests/mm/seal_elf.c              |  137 ---
 tools/testing/selftests/mm/soft-dirty.c            |    2 +-
 tools/testing/selftests/mm/split_huge_page_test.c  |   46 +-
 tools/testing/selftests/mm/thp_settings.c          |    4 +-
 tools/testing/selftests/mm/thp_settings.h          |    4 +-
 tools/testing/selftests/mm/uffd-unit-tests.c       |    4 +-
 tools/testing/selftests/mm/uffd-wp-mremap.c        |  380 ++++++
 tools/testing/selftests/mm/virtual_address_range.c |   41 +-
 tools/testing/selftests/mm/vm_util.c               |   68 +-
 tools/testing/selftests/mm/vm_util.h               |    1 +
 tools/testing/selftests/mm/write_to_hugetlbfs.c    |    2 +-
 tools/testing/vma/vma.c                            |   68 +-
 tools/testing/vma/vma_internal.h                   |  224 +++-
 336 files changed, 8082 insertions(+), 7957 deletions(-)
 create mode 100644 Documentation/mm/damon/monitoring_intervals_tuning_exam=
ple.rst
 delete mode 100644 mm/damon/dbgfs.c
 delete mode 100644 mm/damon/tests/dbgfs-kunit.h
 create mode 100644 mm/pt_reclaim.c
 create mode 100644 mm/zpdesc.h
 create mode 100644 samples/damon/Kconfig
 create mode 100644 samples/damon/Makefile
 create mode 100644 samples/damon/prcl.c
 create mode 100644 samples/damon/wsse.c
 delete mode 100755 tools/testing/selftests/damon/debugfs_attrs.sh
 delete mode 100755 tools/testing/selftests/damon/debugfs_duplicate_context=
_creation.sh
 delete mode 100755 tools/testing/selftests/damon/debugfs_empty_targets.sh
 delete mode 100755 tools/testing/selftests/damon/debugfs_huge_count_read_w=
rite.sh
 delete mode 100755 tools/testing/selftests/damon/debugfs_rm_non_contexts.sh
 delete mode 100755 tools/testing/selftests/damon/debugfs_schemes.sh
 delete mode 100755 tools/testing/selftests/damon/debugfs_target_ids.sh
 delete mode 100644 tools/testing/selftests/damon/debugfs_target_ids_pid_le=
ak.c
 delete mode 100755 tools/testing/selftests/damon/debugfs_target_ids_pid_le=
ak.sh
 delete mode 100644 tools/testing/selftests/damon/debugfs_target_ids_read_b=
efore_terminate_race.c
 delete mode 100755 tools/testing/selftests/damon/debugfs_target_ids_read_b=
efore_terminate_race.sh
 delete mode 100644 tools/testing/selftests/damon/huge_count_read_write.c
 create mode 100644 tools/testing/selftests/mm/pkey_util.c
 delete mode 100644 tools/testing/selftests/mm/seal_elf.c
 create mode 100644 tools/testing/selftests/mm/uffd-wp-mremap.c


.
