]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
Merge tag 'mm-stable-2026-04-18-02-14' of git://git.kernel.org/pub/scm/linux/kernel...
authorLinus Torvalds <torvalds@linux-foundation.org>
Sun, 19 Apr 2026 15:01:17 +0000 (08:01 -0700)
committerLinus Torvalds <torvalds@linux-foundation.org>
Sun, 19 Apr 2026 15:01:17 +0000 (08:01 -0700)
Pull more MM updates from Andrew Morton:

 - "Eliminate Dying Memory Cgroup" (Qi Zheng and Muchun Song)

   Address the longstanding "dying memcg problem". A situation wherein a
   no-longer-used memory control group will hang around for an extended
   period pointlessly consuming memory

 - "fix unexpected type conversions and potential overflows" (Qi Zheng)

   Fix a couple of potential 32-bit/64-bit issues which were identified
   during review of the "Eliminate Dying Memory Cgroup" series

 - "kho: history: track previous kernel version and kexec boot count"
   (Breno Leitao)

   Use Kexec Handover (KHO) to pass the previous kernel's version string
   and the number of kexec reboots since the last cold boot to the next
   kernel, and print it at boot time

 - "liveupdate: prevent double preservation" (Pasha Tatashin)

   Teach LUO to avoid managing the same file across different active
   sessions

 - "liveupdate: Fix module unloading and unregister API" (Pasha
   Tatashin)

   Address an issue with how LUO handles module reference counting and
   unregistration during module unloading

 - "zswap pool per-CPU acomp_ctx simplifications" (Kanchana Sridhar)

   Simplify and clean up the zswap crypto compression handling and
   improve the lifecycle management of zswap pool's per-CPU acomp_ctx
   resources

 - "mm/damon/core: fix damon_call()/damos_walk() vs kdmond exit race"
   (SeongJae Park)

   Address unlikely but possible leaks and deadlocks in damon_call() and
   damon_walk()

 - "mm/damon/core: validate damos_quota_goal->nid" (SeongJae Park)

   Fix a couple of root-only wild pointer dereferences

 - "Docs/admin-guide/mm/damon: warn commit_inputs vs other params race"
   (SeongJae Park)

   Update the DAMON documentation to warn operators about potential
   races which can occur if the commit_inputs parameter is altered at
   the wrong time

 - "Minor hmm_test fixes and cleanups" (Alistair Popple)

   Bugfixes and a cleanup for the HMM kernel selftests

 - "Modify memfd_luo code" (Chenghao Duan)

   Cleanups, simplifications and speedups to the memfd_lou code

 - "mm, kvm: allow uffd support in guest_memfd" (Mike Rapoport)

   Support for userfaultfd in guest_memfd

 - "selftests/mm: skip several tests when thp is not available" (Chunyu
   Hu)

   Fix several issues in the selftests code which were causing breakage
   when the tests were run on CONFIG_THP=n kernels

 - "mm/mprotect: micro-optimization work" (Pedro Falcato)

   A couple of nice speedups for mprotect()

 - "MAINTAINERS: update KHO and LIVE UPDATE entries" (Pratyush Yadav)

   Document upcoming changes in the maintenance of KHO, LUO, memfd_luo,
   kexec, crash, kdump and probably other kexec-based things - they are
   being moved out of mm.git and into a new git tree

* tag 'mm-stable-2026-04-18-02-14' of git://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm: (121 commits)
  MAINTAINERS: add page cache reviewer
  mm/vmscan: avoid false-positive -Wuninitialized warning
  MAINTAINERS: update Dave's kdump reviewer email address
  MAINTAINERS: drop include/linux/liveupdate from LIVE UPDATE
  MAINTAINERS: drop include/linux/kho/abi/ from KHO
  MAINTAINERS: update KHO and LIVE UPDATE maintainers
  MAINTAINERS: update kexec/kdump maintainers entries
  mm/migrate_device: remove dead migration entry check in migrate_vma_collect_huge_pmd()
  selftests: mm: skip charge_reserved_hugetlb without killall
  userfaultfd: allow registration of ranges below mmap_min_addr
  mm/vmstat: fix vmstat_shepherd double-scheduling vmstat_update
  mm/hugetlb: fix early boot crash on parameters without '=' separator
  zram: reject unrecognized type= values in recompress_store()
  docs: proc: document ProtectionKey in smaps
  mm/mprotect: special-case small folios when applying permissions
  mm/mprotect: move softleaf code out of the main function
  mm: remove '!root_reclaim' checking in should_abort_scan()
  mm/sparse: fix comment for section map alignment
  mm/page_io: use sio->len for PSWPIN accounting in sio_read_complete()
  selftests/mm: transhuge_stress: skip the test when thp not available
  ...

21 files changed:
1  2 
CREDITS
Documentation/filesystems/proc.rst
MAINTAINERS
fs/buffer.c
fs/fs-writeback.c
include/linux/fs.h
include/linux/mm.h
include/linux/mmzone.h
include/linux/sched.h
include/linux/shmem_fs.h
include/trace/events/writeback.h
kernel/cgroup/cgroup.c
kernel/liveupdate/luo_session.c
mm/damon/core.c
mm/damon/stat.c
mm/hugetlb.c
mm/memblock.c
mm/mempolicy.c
mm/page_alloc.c
mm/shmem.c
mm/vmstat.c

diff --cc CREDITS
Simple merge
Simple merge
diff --cc MAINTAINERS
Simple merge
diff --cc fs/buffer.c
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
index e5cd2b80fd29dba9177b8ea7c37d63e50e9f60e2,b849b8cc96b1edafe87d7ce76d9e2fba3e1f9c8c..bdac0d685a984400c3d9bea56105d8cede28fc41
@@@ -294,16 -294,19 +294,19 @@@ TRACE_EVENT(track_foreign_dirty
                __entry->ino            = inode ? inode->i_ino : 0;
                __entry->memcg_id       = wb->memcg_css->id;
                __entry->cgroup_ino     = __trace_wb_assign_cgroup(wb);
+               rcu_read_lock();
                __entry->page_cgroup_ino = cgroup_ino(folio_memcg(folio)->css.cgroup);
+               rcu_read_unlock();
        ),
  
 -      TP_printk("bdi %s[%llu]: ino=%lu memcg_id=%u cgroup_ino=%lu page_cgroup_ino=%lu",
 +      TP_printk("bdi %s[%llu]: ino=%llu memcg_id=%u cgroup_ino=%llu page_cgroup_ino=%llu",
                __entry->name,
                __entry->bdi_id,
 -              (unsigned long)__entry->ino,
 +              __entry->ino,
                __entry->memcg_id,
 -              (unsigned long)__entry->cgroup_ino,
 -              (unsigned long)__entry->page_cgroup_ino
 +              __entry->cgroup_ino,
 +              __entry->page_cgroup_ino
        )
  );
  
Simple merge
Simple merge
diff --cc mm/damon/core.c
Simple merge
diff --cc mm/damon/stat.c
Simple merge
diff --cc mm/hugetlb.c
Simple merge
diff --cc mm/memblock.c
Simple merge
diff --cc mm/mempolicy.c
Simple merge
diff --cc mm/page_alloc.c
Simple merge
diff --cc mm/shmem.c
Simple merge
diff --cc mm/vmstat.c
Simple merge