CVE-2026-53153
Description
In the Linux kernel, the following vulnerability has been resolved:
mm/list_lru: drain before clearing xarray entry on reparent
memcg_reparent_list_lrus() clears the dying memcg's xarray entry with xas_store(&xas, NULL) before reparenting its per-node lists into the parent. This opens a window where a concurrent list_lru_del() arriving for the dying memcg sees xa_load() == NULL, walks to the parent in lock_list_lru_of_memcg(), takes the parent's per-node lock, and calls list_del_init() on an item still physically linked on the dying memcg's list.
If another in-flight thread holds the dying memcg's per-node lock at the same moment (another list_lru_del, or a list_lru_walk_one running an isolate callback), both threads modify ->next/->prev pointers on the same physical list under different locks. Adjacent items can corrupt each other's links.
Fix it by reversing the order: reparent each per-node list and mark the child's list lru dead and then clear the xarray entry. Any concurrent list_lru op that finds the still-set xarray entry either takes the dying memcg's per-node lock (synchronizing with the drain) or sees LONG_MIN and walks to the parent, where the items now live.
Affected products
17cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*+ 8 more
- cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*range: >=6.13,<6.18.36
- cpe:2.3:o:linux:linux_kernel:7.1:rc1:*:*:*:*:*:*
- cpe:2.3:o:linux:linux_kernel:7.1:rc2:*:*:*:*:*:*
- cpe:2.3:o:linux:linux_kernel:7.1:rc3:*:*:*:*:*:*
- cpe:2.3:o:linux:linux_kernel:7.1:rc4:*:*:*:*:*:*
- cpe:2.3:o:linux:linux_kernel:7.1:rc5:*:*:*:*:*:*
- cpe:2.3:o:linux:linux_kernel:7.1:rc6:*:*:*:*:*:*
- cpe:2.3:o:linux:linux_kernel:7.1:rc7:*:*:*:*:*:*
- (no CPE)
- cpe:2.3:o:redhat:enterprise_linux:10.0:*:*:*:*:*:*:*
- osv-coords7 versionspkg:apk/chainguard/linux-azure-6.18pkg:apk/chainguard/linux-gcp-6.18pkg:apk/chainguard/linux-gcp-6.18-bootc-boot-installedpkg:apk/chainguard/linux-qemu-6.18pkg:apk/chainguard/linux-qemu-6.18-bootc-boot-installedpkg:apk/chainguard/linux-qemu-melangepkg:linux/kernel
< 6.18.38-r0+ 6 more
- (no CPE)range: < 6.18.38-r0
- (no CPE)range: < 6.18.38-r0
- (no CPE)range: < 6.18.38-r0
- (no CPE)range: < 6.18.38-r0
- (no CPE)range: < 6.18.38-r0
- (no CPE)range: < 6.18.38-r0
- (no CPE)range: >= 6.13.0, < 6.18.36
Patches
Vulnerability mechanics
References
6- git.kernel.org/stable/c/2b66496d794e98f7aeec7688573051f22ec40bacnvdPatch
- git.kernel.org/stable/c/98733f3f0becb1ae0701d021c1748e974e5fa55cnvdPatch
- git.kernel.org/stable/c/c19ff4351214f059349788e13e70e74325831ff6nvdPatch
- access.redhat.com/security/cve/CVE-2026-53153nvdThird Party Advisory
- bugzilla.redhat.com/show_bug.cginvdThird Party Advisory
- security.access.redhat.com/data/csaf/v2/vex/2026/cve-2026-53153.jsonnvdThird Party Advisory
News mentions
1- Linux Kernel: 25 CVEs Land in a Single Day, Spanning Bluetooth to Memory ManagementVypr Intelligence · Jun 26, 2026