History log of /linux/mm/zswap.c (Results 1 – 25 of 1226)
Revision Date Author Comments
# 0fc8f620 27-Apr-2026 Thomas Zimmermann <tzimmermann@suse.de>

Merge drm/drm-fixes into drm-misc-fixes

Getting fixes and updates from v7.1-rc1.

Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de>


# d13e855e 23-Apr-2026 Maxime Ripard <mripard@kernel.org>

Merge drm/drm-fixes into drm-misc-fixes

Tomi needs 7.0 to apply a patch from drm-misc-fixes.

Signed-off-by: Maxime Ripard <mripard@kernel.org>


# 3e9e952b 20-Apr-2026 Petr Mladek <pmladek@suse.com>

Merge branch 'for-7.1-printf-kunit-build' into for-linus


# f4b369c6 20-Apr-2026 Dmitry Torokhov <dmitry.torokhov@gmail.com>

Merge branch 'next' into for-linus

Prepare input updates for 7.1 merge window.


# 40735a68 19-Apr-2026 Linus Torvalds <torvalds@linux-foundation.org>

Merge tag 'mm-stable-2026-04-18-02-14' of git://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm

Pull more MM updates from Andrew Morton:

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

Merge tag 'mm-stable-2026-04-18-02-14' of git://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm

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
...

show more ...


# ef3c0f6c 31-Mar-2026 Kanchana P. Sridhar <kanchanapsridhar2026@gmail.com>

mm: zswap: tie per-CPU acomp_ctx lifetime to the pool

Currently, per-CPU acomp_ctx are allocated on pool creation and/or CPU
hotplug, and destroyed on pool destruction or CPU hotunplug. This
compli

mm: zswap: tie per-CPU acomp_ctx lifetime to the pool

Currently, per-CPU acomp_ctx are allocated on pool creation and/or CPU
hotplug, and destroyed on pool destruction or CPU hotunplug. This
complicates the lifetime management to save memory while a CPU is
offlined, which is not very common.

Simplify lifetime management by allocating per-CPU acomp_ctx once on pool
creation (or CPU hotplug for CPUs onlined later), and keeping them
allocated until the pool is destroyed.

Refactor cleanup code from zswap_cpu_comp_dead() into acomp_ctx_free() to
be used elsewhere.

The main benefit of using the CPU hotplug multi state instance startup
callback to allocate the acomp_ctx resources is that it prevents the cores
from being offlined until the multi state instance addition call returns.

From Documentation/core-api/cpu_hotplug.rst:

"The node list add/remove operations and the callback invocations are
serialized against CPU hotplug operations."

Furthermore, zswap_[de]compress() cannot contend with
zswap_cpu_comp_prepare() because:

- During pool creation/deletion, the pool is not in the zswap_pools
list.

- During CPU hot[un]plug, the CPU is not yet online, as Yosry pointed
out. zswap_cpu_comp_prepare() will be run on a control CPU,
since CPUHP_MM_ZSWP_POOL_PREPARE is in the PREPARE section of "enum
cpuhp_state".

In both these cases, any recursions into zswap reclaim from
zswap_cpu_comp_prepare() will be handled by the old pool.

The above two observations enable the following simplifications:

1) zswap_cpu_comp_prepare():

a) acomp_ctx mutex locking:

If the process gets migrated while zswap_cpu_comp_prepare() is
running, it will complete on the new CPU. In case of failures, we
pass the acomp_ctx pointer obtained at the start of
zswap_cpu_comp_prepare() to acomp_ctx_free(), which again, can
only undergo migration. There appear to be no contention
scenarios that might cause inconsistent values of acomp_ctx's
members. Hence, it seems there is no need for
mutex_lock(&acomp_ctx->mutex) in zswap_cpu_comp_prepare().

b) acomp_ctx mutex initialization:

Since the pool is not yet on zswap_pools list, we don't need to
initialize the per-CPU acomp_ctx mutex in
zswap_pool_create(). This has been restored to occur in
zswap_cpu_comp_prepare().

c) Subsequent CPU offline-online transitions:

zswap_cpu_comp_prepare() checks upfront if acomp_ctx->acomp is
valid. If so, it returns success. This should handle any CPU
hotplug online-offline transitions after pool creation is done.

2) CPU offline vis-a-vis zswap ops:

Let's suppose the process is migrated to another CPU before the
current CPU is dysfunctional. If zswap_[de]compress() holds the
acomp_ctx->mutex lock of the offlined CPU, that mutex will be
released once it completes on the new CPU. Since there is no
teardown callback, there is no possibility of UAF.

3) Pool creation/deletion and process migration to another CPU:

During pool creation/deletion, the pool is not in the zswap_pools
list. Hence it cannot contend with zswap ops on that CPU. However,
the process can get migrated.

a) Pool creation --> zswap_cpu_comp_prepare()
--> process migrated:
* Old CPU offline: no-op.
* zswap_cpu_comp_prepare() continues
to run on the new CPU to finish
allocating acomp_ctx resources for
the offlined CPU.

b) Pool deletion --> acomp_ctx_free()
--> process migrated:
* Old CPU offline: no-op.
* acomp_ctx_free() continues
to run on the new CPU to finish
de-allocating acomp_ctx resources
for the offlined CPU.

4) Pool deletion vis-a-vis CPU onlining:

The call to cpuhp_state_remove_instance() cannot race with
zswap_cpu_comp_prepare() because of hotplug synchronization.

The current acomp_ctx_get_cpu_lock()/acomp_ctx_put_unlock() are deleted.
Instead, zswap_[de]compress() directly call
mutex_[un]lock(&acomp_ctx->mutex).

The per-CPU memory cost of not deleting the acomp_ctx resources upon CPU
offlining, and only deleting them when the pool is destroyed, is 8.28 KB
on x86_64. This cost is only paid when a CPU is offlined, until it is
onlined again.

Link: https://lore.kernel.org/20260331183351.29844-3-kanchanapsridhar2026@gmail.com
Co-developed-by: Kanchana P. Sridhar <kanchanapsridhar2026@gmail.com>
Signed-off-by: Kanchana P. Sridhar <kanchanapsridhar2026@gmail.com>
Signed-off-by: Kanchana P Sridhar <kanchana.p.sridhar@intel.com>
Acked-by: Yosry Ahmed <yosry@kernel.org>
Cc: Chengming Zhou <chengming.zhou@linux.dev>
Cc: Herbert Xu <herbert@gondor.apana.org.au>
Cc: Johannes Weiner <hannes@cmpxchg.org>
Cc: Nhat Pham <nphamcs@gmail.com>
Cc: Sergey Senozhatsky <senozhatsky@chromium.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>

show more ...


# 1556478e 31-Mar-2026 Kanchana P. Sridhar <kanchanapsridhar2026@gmail.com>

mm: zswap: remove redundant checks in zswap_cpu_comp_dead()

Patch series "zswap pool per-CPU acomp_ctx simplifications", v3.

This patchset first removes redundant checks on the acomp_ctx and its
"r

mm: zswap: remove redundant checks in zswap_cpu_comp_dead()

Patch series "zswap pool per-CPU acomp_ctx simplifications", v3.

This patchset first removes redundant checks on the acomp_ctx and its
"req" member in zswap_cpu_comp_dead().

Next, it persists the zswap pool's per-CPU acomp_ctx resources to last
until the pool is destroyed. It then simplifies the per-CPU acomp_ctx
mutex locking in zswap_compress()/zswap_decompress().

Code comments added after allocation and before checking to deallocate the
per-CPU acomp_ctx's members, based on expected crypto API return values
and zswap changes this patchset makes.

Patch 2 is an independent submission of patch 23 from [1], to
facilitate merging.


This patch (of 2):

There are presently redundant checks on the per-CPU acomp_ctx and it's
"req" member in zswap_cpu_comp_dead(): redundant because they are
inconsistent with zswap_pool_create() handling of failure in allocating
the acomp_ctx, and with the expected NULL return value from the
acomp_request_alloc() API when it fails to allocate an acomp_req.

Fix these by converting to them to be NULL checks.

Add comments in zswap_cpu_comp_prepare() clarifying the expected return
values of the crypto_alloc_acomp_node() and acomp_request_alloc() API.

Link: https://lore.kernel.org/20260331183351.29844-2-kanchanapsridhar2026@gmail.com
Link: https://patchwork.kernel.org/project/linux-mm/list/?series=1046677
Signed-off-by: Kanchana P. Sridhar <kanchanapsridhar2026@gmail.com>
Suggested-by: Yosry Ahmed <yosry@kernel.org>
Acked-by: Yosry Ahmed <yosry@kernel.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>

show more ...


# d5ddaf43 05-Mar-2026 Muchun Song <songmuchun@bytedance.com>

mm: zswap: prevent lruvec release in zswap_folio_swapin()

In the near future, a folio will no longer pin its corresponding memory
cgroup. So an lruvec returned by folio_lruvec() could be released w

mm: zswap: prevent lruvec release in zswap_folio_swapin()

In the near future, a folio will no longer pin its corresponding memory
cgroup. So an lruvec returned by folio_lruvec() could be released without
the rcu read lock or a reference to its memory cgroup.

In the current patch, the rcu read lock is employed to safeguard against
the release of the lruvec in zswap_folio_swapin().

This serves as a preparatory measure for the reparenting of the LRU pages.

Link: https://lore.kernel.org/02b3f76ee8d1132f69ac5baaedce38fb82b09a48.1772711148.git.zhengqi.arch@bytedance.com
Signed-off-by: Muchun Song <songmuchun@bytedance.com>
Signed-off-by: Qi Zheng <zhengqi.arch@bytedance.com>
Acked-by: Nhat Pham <nphamcs@gmail.com>
Reviewed-by: Chengming Zhou <chengming.zhou@linux.dev>
Reviewed-by: Harry Yoo <harry.yoo@oracle.com>
Acked-by: Johannes Weiner <hannes@cmpxchg.org>
Acked-by: Shakeel Butt <shakeel.butt@linux.dev>
Cc: Allen Pais <apais@linux.microsoft.com>
Cc: Axel Rasmussen <axelrasmussen@google.com>
Cc: Baoquan He <bhe@redhat.com>
Cc: Chen Ridong <chenridong@huawei.com>
Cc: David Hildenbrand <david@kernel.org>
Cc: Hamza Mahfooz <hamzamahfooz@linux.microsoft.com>
Cc: Hugh Dickins <hughd@google.com>
Cc: Imran Khan <imran.f.khan@oracle.com>
Cc: Kamalesh Babulal <kamalesh.babulal@oracle.com>
Cc: Lance Yang <lance.yang@linux.dev>
Cc: Liam Howlett <Liam.Howlett@oracle.com>
Cc: Lorenzo Stoakes (Oracle) <ljs@kernel.org>
Cc: Michal Hocko <mhocko@suse.com>
Cc: Michal Koutný <mkoutny@suse.com>
Cc: Mike Rapoport <rppt@kernel.org>
Cc: Muchun Song <muchun.song@linux.dev>
Cc: Roman Gushchin <roman.gushchin@linux.dev>
Cc: Suren Baghdasaryan <surenb@google.com>
Cc: Usama Arif <usamaarif642@gmail.com>
Cc: Vlastimil Babka <vbabka@kernel.org>
Cc: Wei Xu <weixugc@google.com>
Cc: Yosry Ahmed <yosry@kernel.org>
Cc: Yuanchu Xie <yuanchu@google.com>
Cc: Zi Yan <ziy@nvidia.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>

show more ...


# cf4d6ad5 05-Mar-2026 Qi Zheng <zhengqi.arch@bytedance.com>

mm: zswap: prevent memory cgroup release in zswap_compress()

In the near future, a folio will no longer pin its corresponding memory
cgroup. To ensure safety, it will only be appropriate to hold th

mm: zswap: prevent memory cgroup release in zswap_compress()

In the near future, a folio will no longer pin its corresponding memory
cgroup. To ensure safety, it will only be appropriate to hold the rcu
read lock or acquire a reference to the memory cgroup returned by
folio_memcg(), thereby preventing it from being released.

In the current patch, the rcu read lock is employed to safeguard against
the release of the memory cgroup in zswap_compress().

Link: https://lore.kernel.org/340f315050fb8a67caaf01b4836d4f38a41cf1a8.1772711148.git.zhengqi.arch@bytedance.com
Signed-off-by: Qi Zheng <zhengqi.arch@bytedance.com>
Acked-by: Johannes Weiner <hannes@cmpxchg.org>
Acked-by: Shakeel Butt <shakeel.butt@linux.dev>
Acked-by: Muchun Song <muchun.song@linux.dev>
Reviewed-by: Harry Yoo <harry.yoo@oracle.com>
Cc: Allen Pais <apais@linux.microsoft.com>
Cc: Axel Rasmussen <axelrasmussen@google.com>
Cc: Baoquan He <bhe@redhat.com>
Cc: Chengming Zhou <chengming.zhou@linux.dev>
Cc: Chen Ridong <chenridong@huawei.com>
Cc: David Hildenbrand <david@kernel.org>
Cc: Hamza Mahfooz <hamzamahfooz@linux.microsoft.com>
Cc: Hugh Dickins <hughd@google.com>
Cc: Imran Khan <imran.f.khan@oracle.com>
Cc: Kamalesh Babulal <kamalesh.babulal@oracle.com>
Cc: Lance Yang <lance.yang@linux.dev>
Cc: Liam Howlett <Liam.Howlett@oracle.com>
Cc: Lorenzo Stoakes (Oracle) <ljs@kernel.org>
Cc: Michal Hocko <mhocko@suse.com>
Cc: Michal Koutný <mkoutny@suse.com>
Cc: Mike Rapoport <rppt@kernel.org>
Cc: Muchun Song <songmuchun@bytedance.com>
Cc: Nhat Pham <nphamcs@gmail.com>
Cc: Roman Gushchin <roman.gushchin@linux.dev>
Cc: Suren Baghdasaryan <surenb@google.com>
Cc: Usama Arif <usamaarif642@gmail.com>
Cc: Vlastimil Babka <vbabka@kernel.org>
Cc: Wei Xu <weixugc@google.com>
Cc: Yosry Ahmed <yosry@kernel.org>
Cc: Yuanchu Xie <yuanchu@google.com>
Cc: Zi Yan <ziy@nvidia.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>

show more ...


# 500af712 16-Apr-2026 Jiri Kosina <jkosina@suse.com>

Merge branch 'for-7.1/winwing' into for-linus

- support for rubmle effects in winwing driver (Ivan Gorinov)


# d4eb7b2d 16-Apr-2026 Jiri Kosina <jkosina@suse.com>

Merge branch 'for-7.1/core-v2' into for-linus

- fixed handling of 0-sized reports (Dmitry Torokhov)
- convert core code to __free() (Dmitry Torokhov)
- support for multiple batteries per HID device

Merge branch 'for-7.1/core-v2' into for-linus

- fixed handling of 0-sized reports (Dmitry Torokhov)
- convert core code to __free() (Dmitry Torokhov)
- support for multiple batteries per HID device (Lucas Zampieri)

show more ...


# 9a683fe0 16-Apr-2026 Namhyung Kim <namhyung@kernel.org>

Merge tag 'v7.0-rc6' into perf-tools

To get the latest updates and fixes.

Signed-off-by: Namhyung Kim <namhyung@kernel.org>


# 334fbe73 15-Apr-2026 Linus Torvalds <torvalds@linux-foundation.org>

Merge tag 'mm-stable-2026-04-13-21-45' of git://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm

Pull MM updates from Andrew Morton:

- "maple_tree: Replace big node with maple copy" (Liam Howlett)

Merge tag 'mm-stable-2026-04-13-21-45' of git://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm

Pull MM updates from Andrew Morton:

- "maple_tree: Replace big node with maple copy" (Liam Howlett)

Mainly prepararatory work for ongoing development but it does reduce
stack usage and is an improvement.

- "mm, swap: swap table phase III: remove swap_map" (Kairui Song)

Offers memory savings by removing the static swap_map. It also yields
some CPU savings and implements several cleanups.

- "mm: memfd_luo: preserve file seals" (Pratyush Yadav)

File seal preservation to LUO's memfd code

- "mm: zswap: add per-memcg stat for incompressible pages" (Jiayuan
Chen)

Additional userspace stats reportng to zswap

- "arch, mm: consolidate empty_zero_page" (Mike Rapoport)

Some cleanups for our handling of ZERO_PAGE() and zero_pfn

- "mm/kmemleak: Improve scan_should_stop() implementation" (Zhongqiu
Han)

A robustness improvement and some cleanups in the kmemleak code

- "Improve khugepaged scan logic" (Vernon Yang)

Improve khugepaged scan logic and reduce CPU consumption by
prioritizing scanning tasks that access memory frequently

- "Make KHO Stateless" (Jason Miu)

Simplify Kexec Handover by transitioning KHO from an xarray-based
metadata tracking system with serialization to a radix tree data
structure that can be passed directly to the next kernel

- "mm: vmscan: add PID and cgroup ID to vmscan tracepoints" (Thomas
Ballasi and Steven Rostedt)

Enhance vmscan's tracepointing

- "mm: arch/shstk: Common shadow stack mapping helper and
VM_NOHUGEPAGE" (Catalin Marinas)

Cleanup for the shadow stack code: remove per-arch code in favour of
a generic implementation

- "Fix KASAN support for KHO restored vmalloc regions" (Pasha Tatashin)

Fix a WARN() which can be emitted the KHO restores a vmalloc area

- "mm: Remove stray references to pagevec" (Tal Zussman)

Several cleanups, mainly udpating references to "struct pagevec",
which became folio_batch three years ago

- "mm: Eliminate fake head pages from vmemmap optimization" (Kiryl
Shutsemau)

Simplify the HugeTLB vmemmap optimization (HVO) by changing how tail
pages encode their relationship to the head page

- "mm/damon/core: improve DAMOS quota efficiency for core layer
filters" (SeongJae Park)

Improve two problematic behaviors of DAMOS that makes it less
efficient when core layer filters are used

- "mm/damon: strictly respect min_nr_regions" (SeongJae Park)

Improve DAMON usability by extending the treatment of the
min_nr_regions user-settable parameter

- "mm/page_alloc: pcp locking cleanup" (Vlastimil Babka)

The proper fix for a previously hotfixed SMP=n issue. Code
simplifications and cleanups ensued

- "mm: cleanups around unmapping / zapping" (David Hildenbrand)

A bunch of cleanups around unmapping and zapping. Mostly
simplifications, code movements, documentation and renaming of
zapping functions

- "support batched checking of the young flag for MGLRU" (Baolin Wang)

Batched checking of the young flag for MGLRU. It's part cleanups; one
benchmark shows large performance benefits for arm64

- "memcg: obj stock and slab stat caching cleanups" (Johannes Weiner)

memcg cleanup and robustness improvements

- "Allow order zero pages in page reporting" (Yuvraj Sakshith)

Enhance free page reporting - it is presently and undesirably order-0
pages when reporting free memory.

- "mm: vma flag tweaks" (Lorenzo Stoakes)

Cleanup work following from the recent conversion of the VMA flags to
a bitmap

- "mm/damon: add optional debugging-purpose sanity checks" (SeongJae
Park)

Add some more developer-facing debug checks into DAMON core

- "mm/damon: test and document power-of-2 min_region_sz requirement"
(SeongJae Park)

An additional DAMON kunit test and makes some adjustments to the
addr_unit parameter handling

- "mm/damon/core: make passed_sample_intervals comparisons
overflow-safe" (SeongJae Park)

Fix a hard-to-hit time overflow issue in DAMON core

- "mm/damon: improve/fixup/update ratio calculation, test and
documentation" (SeongJae Park)

A batch of misc/minor improvements and fixups for DAMON

- "mm: move vma_(kernel|mmu)_pagesize() out of hugetlb.c" (David
Hildenbrand)

Fix a possible issue with dax-device when CONFIG_HUGETLB=n. Some code
movement was required.

- "zram: recompression cleanups and tweaks" (Sergey Senozhatsky)

A somewhat random mix of fixups, recompression cleanups and
improvements in the zram code

- "mm/damon: support multiple goal-based quota tuning algorithms"
(SeongJae Park)

Extend DAMOS quotas goal auto-tuning to support multiple tuning
algorithms that users can select

- "mm: thp: reduce unnecessary start_stop_khugepaged()" (Breno Leitao)

Fix the khugpaged sysfs handling so we no longer spam the logs with
reams of junk when starting/stopping khugepaged

- "mm: improve map count checks" (Lorenzo Stoakes)

Provide some cleanups and slight fixes in the mremap, mmap and vma
code

- "mm/damon: support addr_unit on default monitoring targets for
modules" (SeongJae Park)

Extend the use of DAMON core's addr_unit tunable

- "mm: khugepaged cleanups and mTHP prerequisites" (Nico Pache)

Cleanups to khugepaged and is a base for Nico's planned khugepaged
mTHP support

- "mm: memory hot(un)plug and SPARSEMEM cleanups" (David Hildenbrand)

Code movement and cleanups in the memhotplug and sparsemem code

- "mm: remove CONFIG_ARCH_ENABLE_MEMORY_HOTREMOVE and cleanup
CONFIG_MIGRATION" (David Hildenbrand)

Rationalize some memhotplug Kconfig support

- "change young flag check functions to return bool" (Baolin Wang)

Cleanups to change all young flag check functions to return bool

- "mm/damon/sysfs: fix memory leak and NULL dereference issues" (Josh
Law and SeongJae Park)

Fix a few potential DAMON bugs

- "mm/vma: convert vm_flags_t to vma_flags_t in vma code" (Lorenzo
Stoakes)

Convert a lot of the existing use of the legacy vm_flags_t data type
to the new vma_flags_t type which replaces it. Mainly in the vma
code.

- "mm: expand mmap_prepare functionality and usage" (Lorenzo Stoakes)

Expand the mmap_prepare functionality, which is intended to replace
the deprecated f_op->mmap hook which has been the source of bugs and
security issues for some time. Cleanups, documentation, extension of
mmap_prepare into filesystem drivers

- "mm/huge_memory: refactor zap_huge_pmd()" (Lorenzo Stoakes)

Simplify and clean up zap_huge_pmd(). Additional cleanups around
vm_normal_folio_pmd() and the softleaf functionality are performed.

* tag 'mm-stable-2026-04-13-21-45' of git://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm: (369 commits)
mm: fix deferred split queue races during migration
mm/khugepaged: fix issue with tracking lock
mm/huge_memory: add and use has_deposited_pgtable()
mm/huge_memory: add and use normal_or_softleaf_folio_pmd()
mm: add softleaf_is_valid_pmd_entry(), pmd_to_softleaf_folio()
mm/huge_memory: separate out the folio part of zap_huge_pmd()
mm/huge_memory: use mm instead of tlb->mm
mm/huge_memory: remove unnecessary sanity checks
mm/huge_memory: deduplicate zap deposited table call
mm/huge_memory: remove unnecessary VM_BUG_ON_PAGE()
mm/huge_memory: add a common exit path to zap_huge_pmd()
mm/huge_memory: handle buggy PMD entry in zap_huge_pmd()
mm/huge_memory: have zap_huge_pmd return a boolean, add kdoc
mm/huge: avoid big else branch in zap_huge_pmd()
mm/huge_memory: simplify vma_is_specal_huge()
mm: on remap assert that input range within the proposed VMA
mm: add mmap_action_map_kernel_pages[_full]()
uio: replace deprecated mmap hook with mmap_prepare in uio_info
drivers: hv: vmbus: replace deprecated mmap hook with mmap_prepare
mm: allow handling of stacked mmap_prepare hooks in more drivers
...

show more ...


# ff1c0c5d 11-Apr-2026 Thomas Gleixner <tglx@kernel.org>

Merge branch 'timers/urgent' into timers/core

to resolve the conflict with urgent fixes.


# 3f44bccd 09-Apr-2026 Takashi Iwai <tiwai@suse.de>

Merge branch 'for-linus' into for-next

Pull 7.0-devel branch for further development of HD-audio codec quirks.

Signed-off-by: Takashi Iwai <tiwai@suse.de>


# 2c9e7a5f 08-Apr-2026 Mark Brown <broonie@kernel.org>

Add Renesas RZ/G3L RSPI support

Biju <biju.das.au@gmail.com> says:

This patch series adds binding and driver support for RSPI IP found on the
RZ/G3L SoC. The RSPI is compatible with RZ/V2H RSPI, bu

Add Renesas RZ/G3L RSPI support

Biju <biju.das.au@gmail.com> says:

This patch series adds binding and driver support for RSPI IP found on the
RZ/G3L SoC. The RSPI is compatible with RZ/V2H RSPI, but has 2 clocks
compared to 3 on RZ/V2H.

Link: https://patch.msgid.link/20260408085418.18770-1-biju.das.jz@bp.renesas.com

show more ...


# 3723393c 06-Apr-2026 Greg Kroah-Hartman <gregkh@linuxfoundation.org>

Merge tag 'v7.0-rc7' into usb-next

We need the USB fixes in here to build on and for testing

Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>


# a5210135 06-Apr-2026 Greg Kroah-Hartman <gregkh@linuxfoundation.org>

Merge tag 'v7.0-rc7' into char-misc-next

We need the char/misc/iio/comedi fixes in here as well for testing

Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>


# ae1a645d 01-Feb-2026 Kairui Song <kasong@tencent.com>

mm/zswap: remove SWP_SYNCHRONOUS_IO swapcache bypass workaround

Since commit f1879e8a0c60 ("mm, swap: never bypass the swap cache even for
SWP_SYNCHRONOUS_IO"), all swap-in operations go through the

mm/zswap: remove SWP_SYNCHRONOUS_IO swapcache bypass workaround

Since commit f1879e8a0c60 ("mm, swap: never bypass the swap cache even for
SWP_SYNCHRONOUS_IO"), all swap-in operations go through the swap cache,
including those from SWP_SYNCHRONOUS_IO devices like zram. Which means
the workaround for swap cache bypassing introduced by commit 25cd241408a2
("mm: zswap: fix data loss on SWP_SYNCHRONOUS_IO devices") is no longer
needed. Remove it, but keep the comments that are still helpful.

Link: https://lkml.kernel.org/r/20260202-zswap-syncio-cleanup-v1-1-86bb24a64521@tencent.com
Signed-off-by: Kairui Song <kasong@tencent.com>
Suggested-by: Yosry Ahmed <yosry.ahmed@linux.dev>
Reviewed-by: Barry Song <baohua@kernel.org>
Acked-by: Chris Li <chrisl@kernel.org>
Acked-by: Yosry Ahmed <yosry.ahmed@linux.dev>
Acked-by: Nhat Pham <nphamcs@gmail.com>
Reviewed-by: Chengming Zhou <chengming.zhou@linux.dev>
Cc: Baoquan He <bhe@redhat.com>
Cc: Johannes Weiner <hannes@cmpxchg.org>
Cc: Kairui Song <kasong@tencent.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>

show more ...


# bad28e01 04-Apr-2026 Thomas Gleixner <tglx@kernel.org>

Merge tag 'v7.0-rc6' into irq/core

to be able to merge the hyper-v patch related to randomness.


# 891a05cc 03-Apr-2026 Alexei Starovoitov <ast@kernel.org>

Merge git://git.kernel.org/pub/scm/linux/kernel/git/bpf/bpf 7.0-rc6+

Cross-merge BPF and other fixes after downstream PR.

Minor conflict in kernel/bpf/verifier.c

Signed-off-by: Alexei Starovoitov

Merge git://git.kernel.org/pub/scm/linux/kernel/git/bpf/bpf 7.0-rc6+

Cross-merge BPF and other fixes after downstream PR.

Minor conflict in kernel/bpf/verifier.c

Signed-off-by: Alexei Starovoitov <ast@kernel.org>

show more ...


# 9853914c 02-Apr-2026 Ingo Molnar <mingo@kernel.org>

Merge branch 'sched/urgent' into sched/core, to resolve conflicts

The following fix in sched/urgent:

e08d007f9d81 ("sched/debug: Fix avg_vruntime() usage")

is in conflict with this pending commi

Merge branch 'sched/urgent' into sched/core, to resolve conflicts

The following fix in sched/urgent:

e08d007f9d81 ("sched/debug: Fix avg_vruntime() usage")

is in conflict with this pending commit in sched/core:

4823725d9d1d ("sched/fair: Increase weight bits for avg_vruntime")

Both modify the same variable definition and initialization blocks,
resolve it by merging the two.

Conflicts:
kernel/sched/debug.c

Signed-off-by: Ingo Molnar <mingo@kernel.org>

show more ...


# b477ab88 02-Apr-2026 Takashi Iwai <tiwai@suse.de>

Merge tag 'asoc-fix-v7.0-rc6' of https://git.kernel.org/pub/scm/linux/kernel/git/broonie/sound into for-linus

ASoC: Fixes for v7.0

Another smallish batch of fixes and quirks, these days it's AMD th

Merge tag 'asoc-fix-v7.0-rc6' of https://git.kernel.org/pub/scm/linux/kernel/git/broonie/sound into for-linus

ASoC: Fixes for v7.0

Another smallish batch of fixes and quirks, these days it's AMD that is
getting all the DMI entries added. We've got one core fix for a missing
list initialisation with auxiliary devices, otherwise it's all fairly
small things.

show more ...


# f6225b54 30-Mar-2026 Dave Airlie <airlied@redhat.com>

BackMerge tag 'v7.0-rc6' into drm-next

Linux 7.0-rc6

Requested by a few people on irc to resolve conflicts in other tress.

Signed-off-by: Dave Airlie <airlied@redhat.com>


# e6fd2491 30-Mar-2026 Leon Romanovsky <leon@kernel.org>

Merge branch 'master' into rdma-next

Let's bring v7.0-rc6 to the -next branch, so we can merge the DMA
attributes fix [1] without merge conflicts.

[1] https://lore.kernel.org/all/20260323-umem-dma-

Merge branch 'master' into rdma-next

Let's bring v7.0-rc6 to the -next branch, so we can merge the DMA
attributes fix [1] without merge conflicts.

[1] https://lore.kernel.org/all/20260323-umem-dma-attrs-v1-1-d6890f2e6a1e@nvidia.com

Signed-off-by: Leon Romanovsky <leon@kernel.org>

* master: (1688 commits)
Linux 7.0-rc6
...

show more ...


12345678910>>...50