In the Linux kernel, the following vulnerability has been resolved:
mm/memory: fix spurious warning when unmapping device-private/exclusive pages
Device private and exclusive entries are only supported for anonymous folios. This condition is tested in __migrate_device_pages() and make_device_exclusive() using folio_test_anon(). However the unmap path tests this assumption using vma_is_anonymous().
This is wrong because whilst anonymous VMAs can only contain folios where folio_test_anon() is true the opposite relation does not hold. A folio for which folio_test_anon() is true does not imply vma_is_anonymous() is true. Such a condition can occur if for example a folio is part of a private filebacked mapping.
In this case vma_is_anonymous() is false as the mapping is filebacked, but folio_test_anon() may be true, thus permitting devices to migrate the folio to device private memory. This can lead to the following spurious warnings during process teardown:
[ 772.737706] ------------[ cut here ]------------ [ 772.739201] WARNING: mm/memory.c:1754 at unmap_page_range.cold+0x26/0x18a, CPU#17: hmm-tests/2041 [ 772.742050] Modules linked in: test_hmm nvidia_uvm(O) nvidia(O) [ 772.743959] CPU: 17 UID: 0 PID: 2041 Comm: hmm-tests Tainted: G W O 7.0.0+ #387 PREEMPT(full) [ 772.747104] Tainted: [W]=WARN, [O]=OOT_MODULE [ 772.748509] Hardware name: QEMU Standard PC (Q35 + ICH9, 2009), BIOS rel-1.17.0-0-gb52ca86e094d-prebuilt.qemu.org 04/01/2014 [ 772.752117] RIP: 0010:unmap_page_range.cold+0x26/0x18a [ 772.753780] Code: 7e fe ff ff 48 89 4c 24 78 4c 89 44 24 38 e8 f2 ff b1 00 48 8b 4c 24 78 4c 8b 44 24 38 48 8b 44 24 18 48 83 78 48 00 74 04 90 <0f> 0b 90 48 89 ca b8 ff ff 37 00 48 c1 ea 03 48 c1 e0 2a 80 3c 02 [ 772.759602] RSP: 0018:ffff888112607550 EFLAGS: 00010286 [ 772.761310] RAX: ffff88811bbf4dc0 RBX: dffffc0000000000 RCX: ffffea03e9bfffd8 [ 772.763583] RDX: 1ffff1102377e9c1 RSI: 0000000000000008 RDI: ffff88811bbf4e08 [ 772.765914] RBP: 0000000000000006 R08: ffff8881059f7448 R09: ffffed10224c0e68 [ 772.768184] R10: ffff888112607347 R11: 0000000000000001 R12: 0000000000000001 [ 772.770461] R13: ffffea03e9bfffc0 R14: ffff888112607908 R15: ffffea03e9bfffc0 [ 772.772782] FS: 00007f327caa2780(0000) GS:ffff888427b7d000(0000) knlGS:0000000000000000 [ 772.775328] CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 [ 772.777187] CR2: 00007f327ca89000 CR3: 00000001994d5000 CR4: 00000000000006f0 [ 772.779135] Call Trace: [ 772.779792] <TASK> [ 772.780317] ? dmirror_interval_invalidate+0x1a3/0x290 [test_hmm] [ 772.781873] ? vm_normal_page_pud+0x2b0/0x2b0 [ 772.782992] ? __rwlock_init+0x150/0x150 [ 772.784006] ? lock_release+0x216/0x2b0 [ 772.785008] ? __mmu_notifier_invalidate_range_start+0x505/0x6e0 [ 772.786522] ? lock_release+0x216/0x2b0 [ 772.787498] ? unmap_single_vma+0xb6/0x210 [ 772.788573] unmap_vmas+0x27d/0x520 [ 772.789506] ? unmap_single_vma+0x210/0x210 [ 772.790607] ? mas_update_gap.part.0+0x620/0x620 [ 772.791834] unmap_region+0x19e/0x350 [ 772.792769] ? remove_vma+0x130/0x130 [ 772.793684] ? mas_alloc_nodes+0x1f2/0x300 [ 772.794730] vms_complete_munmap_vmas+0x8c1/0xe20 [ 772.795926] ? unmap_region+0x350/0x350 [ 772.796917] do_vmi_align_munmap+0x36a/0x4e0 [ 772.798018] ? lock_release+0x216/0x2b0 [ 772.799024] ? vma_shrink+0x620/0x620 [ 772.799983] do_vmi_munmap+0x150/0x2c0 [ 772.800939] __vm_munmap+0x161/0x2c0 [ 772.801872] ? expand_downwards+0xd60/0xd60 [ 772.802948] ? clockevents_program_event+0x1ef/0x540 [ 772.804217] ? lock_release+0x216/0x2b0 [ 772.805158] __x64_sys_munmap+0x59/0x80 [ 772.805776] do_syscall_64+0xfc/0x670 [ 772.806336] ? irqentry_exit+0xda/0x580 [ 772.806976] entry_SYSCALL_64_after_hwframe+0x4b/0x53 [ 772.807772] RIP: 0033:0x7f327cbb2717 [ 772.808323] Code: 73 01 c3 48 8b 0d f9 76 0d 00 f7 d8 64 89 01 48 83 c8 ff c3 66 2e 0f 1f 84 00 00 00 00 00 0f 1f 44 00 00 b8 0b 00 00 00 0f 05 <48> 3d 01 f0 ff ---truncated---
CVSS Details
- CVSS 3.1 Base Score: 5.5
- CVSS 3.1 Vector: (CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H)
Covered by Rapid7
| Product | Vendor Advisory | Solution File | Added | Published |
|---|---|---|---|---|
| Amazon_linux_2023 | — | Upgrade kernel6.12-develUpgrade kernel6.18-toolsUpgrade kernel6.18Upgrade python3-perf-debuginfoUpgrade bpftool6.12-debuginfoUpgrade kernel-headersUpgrade bpftool6.18Upgrade kernel6.12-debuginfo-common-x86_64Upgrade perf-debuginfoUpgrade kernel-debuginfoUpgrade kernel6.12-headersUpgrade kernel6.12-debuginfoUpgrade kernel6.18-debuginfo-common-aarch64Upgrade kernel6.18-modules-extra-commonUpgrade python3-perf6.18-debuginfoUpgrade kernel6.12-modules-extra-commonUpgrade kernel6.12-modules-extraUpgrade perfUpgrade kernel-modules-extraUpgrade python3-perf6.12Upgrade perf6.12-debuginfoUpgrade kernel6.12-tools-develUpgrade kernel-tools-develUpgrade python3-perfUpgrade microvm-kernel6.18Upgrade kernelUpgrade kernel6.12Upgrade perf6.18Upgrade kernel6.12-toolsUpgrade kernel6.18-headersUpgrade kernel-livepatch-6.1.176-220.358Upgrade kernel-develUpgrade kernel6.18-tools-debuginfoUpgrade perf6.18-debuginfoUpgrade kernel-tools-debuginfoUpgrade kernel6.12-debuginfo-common-aarch64Upgrade kernel6.18-modules-extraUpgrade kernel-livepatch-6.18.35-68.127Upgrade bpftool6.18-debuginfoUpgrade kernel6.12-tools-debuginfoUpgrade python3-perf6.12-debuginfoUpgrade kernel6.18-develUpgrade bpftool6.12Upgrade kernel6.18-debuginfo-common-x86_64Upgrade perf6.12Upgrade kernel-modules-extra-commonUpgrade bpftool-debuginfoUpgrade kernel6.18-tools-develUpgrade kernel-debuginfo-common-aarch64Upgrade python3-perf6.18Upgrade kernel-toolsUpgrade kernel-debuginfo-common-x86_64Upgrade kernel6.18-debuginfoUpgrade kernel-livepatch-6.12.94-123.174Upgrade bpftool | Aug 10, 2026 | Jul 19, 2026 |
| Debian | — | Upgrade linux | Jul 20, 2026 | Jul 20, 2026 |
| Redhat_linux | — | No solution exists | Jul 22, 2026 | Jul 19, 2026 |
| Ubuntu | — | Upgrade linux-image-nvidia-hwe-26.04Upgrade linux-image-aws-64kUpgrade linux-image-nvidia-64k-7.0Upgrade linux-image-7.0.0-2016-nvidia-bosUpgrade linux-image-gcpUpgrade linux-image-gcp-64k-7.0Upgrade linux-image-gcp-64kUpgrade linux-image-7.0.0-1010-ibmUpgrade linux-image-oracle-7.0Upgrade linux-image-nvidiaUpgrade linux-image-7.0.0-1011-gcp-64kUpgrade linux-image-azureUpgrade linux-image-7.0.0-1010-azureUpgrade linux-image-7.0.0-1008-oracleUpgrade linux-image-nvidia-bos-64kUpgrade linux-image-ibm-7.0Upgrade linux-image-raspiUpgrade linux-image-7.0.0-1016-nvidia-64kUpgrade linux-image-nvidia-bosUpgrade linux-image-nvidia-bos-64k-7.0Upgrade linux-image-nvidia-64kUpgrade linux-image-nvidia-bos-7.0Upgrade linux-image-nvidia-64k-hwe-26.04Upgrade linux-image-nvidia-7.0Upgrade linux-image-oracle-64kUpgrade linux-image-raspi-realtimeUpgrade linux-image-7.0.0-1009-aws-64kUpgrade linux-image-ibmUpgrade linux-image-azure-7.0Upgrade linux-image-7.0.0-1009-azure-fdeUpgrade linux-image-awsUpgrade linux-image-azure-fdeUpgrade linux-image-7.0.0-2016-nvidia-bos-64kUpgrade linux-image-7.0.0-1011-gcpUpgrade linux-image-7.0.0-1015-raspi-realtimeUpgrade linux-image-7.0.0-1015-raspiUpgrade linux-image-azure-fde-7.0Upgrade linux-image-oracle-64k-7.0Upgrade linux-image-7.0.0-1016-nvidiaUpgrade linux-image-gcp-7.0Upgrade linux-image-7.0.0-1008-oracle-64kUpgrade linux-image-raspi-realtime-7.0Upgrade linux-image-raspi-7.0Upgrade linux-image-7.0.0-1009-awsUpgrade linux-image-7.0.0-1014-azureUpgrade linux-image-aws-64k-7.0Upgrade linux-image-oracleUpgrade linux-image-aws-7.0 | Jul 21, 2026 | Jul 20, 2026 |
| Vmware Photon_os | — | Use 'tdnf update' to upgrade all packages to the latest version. | Jul 27, 2026 | Jul 19, 2026 |
Prioritise with Active Threat Intelligence
With curated Threat Intelligence, you can see which vulnerabilities truly put you at risk, prioritize what matters most, and act before attackers do.
Explore Intelligence Hub