Skip to content
OpenAdvisories
Unscored CVE-2025-38520 EUVD-2025-25078GHSA-8w9j-8c65-frh3

drm/amdkfd: Don't call mmput from MMU notifier callback

Published Aug 16, 2025 · Updated May 23, 2026 · Assigned by Linux

Vendor: Linux Product: Linux Package: kernel Package: linux Package: linux Package: linux-allwinner-5.19 Package: linux-aws Package: linux-aws-5.0 Package: linux-aws-5.11 Package: linux-aws-5.13 Package: linux-aws-5.15 Package: linux-aws-5.19 Package: linux-aws-5.3 Package: linux-aws-5.8 Package: linux-aws-6.14 Package: linux-aws-6.2 Package: linux-aws-6.5 Package: linux-aws-6.8 Package: linux-aws-fips Package: linux-azure Package: linux-azure-5.11 Package: linux-azure-5.13 Package: linux-azure-5.15 Package: linux-azure-5.19 Package: linux-azure-5.3 Package: linux-azure-5.8 Package: linux-azure-6.11 Package: linux-azure-6.14 Package: linux-azure-6.2 Package: linux-azure-6.5 Package: linux-azure-6.8 Package: linux-azure-edge Package: linux-azure-fde Package: linux-azure-fde-5.15 Package: linux-azure-fde-5.19 Package: linux-azure-fde-6.14 Package: linux-azure-fde-6.2 Package: linux-azure-fde-6.8 Package: linux-azure-fips Package: linux-azure-nvidia Package: linux-azure-nvidia-6.14 Package: linux-bluefield Package: linux-fips Package: linux-gcp Package: linux-gcp-5.11 Package: linux-gcp-5.13 Package: linux-gcp-5.15 Package: linux-gcp-5.19 Package: linux-gcp-5.3 Package: linux-gcp-5.8 Package: linux-gcp-6.11 Package: linux-gcp-6.14 Package: linux-gcp-6.2 Package: linux-gcp-6.5 Package: linux-gcp-6.8 Package: linux-gcp-fips Package: linux-gke Package: linux-gke-4.15 Package: linux-gke-5.15 Package: linux-gke-5.4 Package: linux-gkeop Package: linux-gkeop-5.15 Package: linux-gkeop-5.4 Package: linux-hwe Package: linux-hwe-5.11 Package: linux-hwe-5.13 Package: linux-hwe-5.15 Package: linux-hwe-5.19 Package: linux-hwe-5.8 Package: linux-hwe-6.11 Package: linux-hwe-6.2 Package: linux-hwe-6.5 Package: linux-hwe-6.8 Package: linux-hwe-edge Package: linux-ibm Package: linux-ibm-5.15 Package: linux-ibm-6.8 Package: linux-intel Package: linux-intel-5.13 Package: linux-intel-iot-realtime Package: linux-intel-iotg Package: linux-intel-iotg-5.15 Package: linux-kvm Package: linux-lowlatency Package: linux-lowlatency-hwe-5.15 Package: linux-lowlatency-hwe-5.19 Package: linux-lowlatency-hwe-6.11 Package: linux-lowlatency-hwe-6.2 Package: linux-lowlatency-hwe-6.5 Package: linux-lowlatency-hwe-6.8 Package: linux-nvidia Package: linux-nvidia-6.11 Package: linux-nvidia-6.2 Package: linux-nvidia-6.5 Package: linux-nvidia-6.8 Package: linux-nvidia-lowlatency Package: linux-nvidia-tegra Package: linux-nvidia-tegra-5.15 Package: linux-nvidia-tegra-igx Package: linux-oem Package: linux-oem-5.10 Package: linux-oem-5.13 Package: linux-oem-5.14 Package: linux-oem-5.17 Package: linux-oem-5.6 Package: linux-oem-6.0 Package: linux-oem-6.1 Package: linux-oem-6.11 Package: linux-oem-6.14 Package: linux-oem-6.5 Package: linux-oem-6.8 Package: linux-oracle Package: linux-oracle-5.0 Package: linux-oracle-5.11 Package: linux-oracle-5.13 Package: linux-oracle-5.15 Package: linux-oracle-5.3 Package: linux-oracle-5.8 Package: linux-oracle-6.14 Package: linux-oracle-6.5 Package: linux-oracle-6.8 Package: linux-raspi Package: linux-raspi-realtime Package: linux-raspi2 Package: linux-realtime Package: linux-realtime-6.14 Package: linux-realtime-6.8 Package: linux-riscv Package: linux-riscv-5.11 Package: linux-riscv-5.15 Package: linux-riscv-5.19 Package: linux-riscv-5.8 Package: linux-riscv-6.14 Package: linux-riscv-6.5 Package: linux-riscv-6.8 Package: linux-starfive-5.19 Package: linux-starfive-6.2 Package: linux-starfive-6.5 Package: linux-vmware Package: linux-xilinx Package: linux-xilinx-zynqmp Platform: Linux Ecosystem: Azure Linux Ecosystem: Debian Ecosystem: Ubuntu

Description

In the Linux kernel, the following vulnerability has been resolved:

drm/amdkfd: Don't call mmput from MMU notifier callback

If the process is exiting, the mmput inside mmu notifier callback from
compactd or fork or numa balancing could release the last reference
of mm struct to call exit_mmap and free_pgtable, this triggers deadlock
with below backtrace.

The deadlock will leak kfd process as mmu notifier release is not called
and cause VRAM leaking.

The fix is to take mm reference mmget_non_zero when adding prange to the
deferred list to pair with mmput in deferred list work.

If prange split and add into pchild list, the pchild work_item.mm is not
used, so remove the mm parameter from svm_range_unmap_split and
svm_range_add_child.

The backtrace of hung task:

INFO: task python:348105 blocked for more than 64512 seconds.
Call Trace:
__schedule+0x1c3/0x550
schedule+0x46/0xb0
rwsem_down_write_slowpath+0x24b/0x4c0
unlink_anon_vmas+0xb1/0x1c0
free_pgtables+0xa9/0x130
exit_mmap+0xbc/0x1a0
mmput+0x5a/0x140
svm_range_cpu_invalidate_pagetables+0x2b/0x40 [amdgpu]
mn_itree_invalidate+0x72/0xc0
__mmu_notifier_invalidate_range_start+0x48/0x60
try_to_unmap_one+0x10fa/0x1400
rmap_walk_anon+0x196/0x460
try_to_unmap+0xbb/0x210
migrate_page_unmap+0x54d/0x7e0
migrate_pages_batch+0x1c3/0xae0
migrate_pages_sync+0x98/0x240
migrate_pages+0x25c/0x520
compact_zone+0x29d/0x590
compact_zone_order+0xb6/0xf0
try_to_compact_pages+0xbe/0x220
__alloc_pages_direct_compact+0x96/0x1a0
__alloc_pages_slowpath+0x410/0x930
__alloc_pages_nodemask+0x3a9/0x3e0
do_huge_pmd_anonymous_page+0xd7/0x3e0
__handle_mm_fault+0x5e3/0x5f0
handle_mm_fault+0xf7/0x2e0
hmm_vma_fault.isra.0+0x4d/0xa0
walk_pmd_range.isra.0+0xa8/0x310
walk_pud_range+0x167/0x240
walk_pgd_range+0x55/0x100
__walk_page_range+0x87/0x90
walk_page_range+0xf6/0x160
hmm_range_fault+0x4f/0x90
amdgpu_hmm_range_get_pages+0x123/0x230 [amdgpu]
amdgpu_ttm_tt_get_user_pages+0xb1/0x150 [amdgpu]
init_user_pages+0xb1/0x2a0 [amdgpu]
amdgpu_amdkfd_gpuvm_alloc_memory_of_gpu+0x543/0x7d0 [amdgpu]
kfd_ioctl_alloc_memory_of_gpu+0x24c/0x4e0 [amdgpu]
kfd_ioctl+0x29d/0x500 [amdgpu]

(cherry picked from commit a29e067bd38946f752b0ef855f3dfff87e77bec7)

Affected products

VendorProductAffectedFixed
Linux Linux 5.15.49 – < 5.16, 5.18.6 – < 5.19, 5.19 5.16

Fixed in Linux distributions

Distributions backport fixes, so the version that fixes this vulnerability differs per release — upgrade to at least the version shown. From the distributions' security trackers and advisories.

ReleasePackageFixed inAdvisory
Debian 14 linux 6.16.3-1 —
Debian 13 linux 6.12.41-1 —
Debian 12 linux 6.1.148-1 —
Debian 11 linux-6.1 6.1.153-1~deb11u1 DLA-4328-1
ReleasePackageFixed inAdvisory
Ubuntu Nvidia-BlueField 24.04 LTS linux-bluefield 6.8.0-1016.20 —
Ubuntu Nvidia-BlueField 22.04 LTS linux-bluefield No fix yet —
Ubuntu 25.10 linux-azure-fde No fix yet —
Ubuntu 24.04 LTS linux 6.8.0-100.100 USN-8028-1
Ubuntu 24.04 LTS linux-aws +1 6.8.0-1046.49 USN-8028-5
Ubuntu 24.04 LTS linux-aws-6.14 +2 6.14.0-1017.17~24.04.1 USN-7934-1, USN-7879-3
Ubuntu 24.04 LTS linux-azure 6.8.0-1046.52 USN-8074-1
Ubuntu 24.04 LTS linux-azure-fde 6.8.0-1046.53 —
Ubuntu 24.04 LTS linux-azure-nvidia 6.8.0-1039.42 —
Ubuntu 24.04 LTS linux-gcp 6.8.0-1047.50 USN-8031-3
Ubuntu 24.04 LTS linux-gcp-6.14 6.14.0-1020.21~24.04.1 USN-7879-4
Ubuntu 24.04 LTS linux-gke 6.8.0-1043.48 USN-8031-3
Ubuntu 24.04 LTS linux-gkeop 6.8.0-1030.33 USN-8028-5
Ubuntu 24.04 LTS linux-hwe-6.14 6.14.0-36.36~24.04.1 USN-7879-1
Ubuntu 24.04 LTS linux-ibm 6.8.0-1044.44 USN-8028-8
Ubuntu 24.04 LTS linux-intel +12 No fix yet —
Ubuntu 24.04 LTS linux-lowlatency 6.8.0-100.100.1 USN-8052-1
Ubuntu 24.04 LTS linux-nvidia-lowlatency 6.8.0-1046.49.1 USN-8028-7
Ubuntu 24.04 LTS linux-nvidia-tegra 6.8.0-1020.20 —
Ubuntu 24.04 LTS linux-oem-6.14 6.14.0-1016.16 USN-7880-1
Ubuntu 24.04 LTS linux-oracle 6.8.0-1043.44 USN-8028-5
Ubuntu 24.04 LTS linux-raspi 6.8.0-1047.51 USN-8028-1
Ubuntu 24.04 LTS linux-riscv-6.14 6.14.0-36.36.1~24.04.1 —
Ubuntu 24.04 LTS linux-xilinx 6.8.0-1023.24 USN-8052-2
Ubuntu 22.04 LTS linux +49 No fix yet —
Ubuntu 22.04 LTS linux-aws-6.8 +1 6.8.0-1046.49~22.04.1 USN-8028-5
Ubuntu 22.04 LTS linux-azure-6.8 6.8.0-1051.57~22.04.1 USN-8126-1
Ubuntu 22.04 LTS linux-azure-fde-6.8 6.8.0-1046.53~22.04.1 —
Ubuntu 22.04 LTS linux-gcp-6.8 6.8.0-1047.50~22.04.2 USN-8031-1
Ubuntu 22.04 LTS linux-hwe-6.8 +1 6.8.0-100.100~22.04.1 USN-8028-6
Ubuntu 22.04 LTS linux-ibm-6.8 6.8.0-1044.44~22.04.1 USN-8028-8
Ubuntu 22.04 LTS linux-lowlatency-hwe-6.8 6.8.0-100.100.1~22.04.1 USN-8028-6
Ubuntu 22.04 LTS linux-oracle-6.8 6.8.0-1043.44~22.04.1 USN-8028-5
Show 9 more (older releases, extended support, other products)
ReleasePackageFixed inAdvisory
Ubuntu 20.04 LTS linux-gke +28 No fix yet —
Ubuntu 18.04 LTS linux-gcp +14 No fix yet —
Ubuntu 16.04 LTS linux-hwe-edge No fix yet —
Ubuntu Pro Realtime 24.04 LTS linux-raspi-realtime 6.8.0-2037.38 USN-8028-3
Ubuntu Pro Realtime 24.04 LTS linux-realtime 6.8.1-1041.42 USN-8028-3
Ubuntu Pro Realtime 24.04 LTS linux-realtime-6.14 6.14.0-1016.16~24.04.1 USN-7879-2
Ubuntu Pro Realtime 22.04 LTS linux-realtime +1 No fix yet —
Ubuntu Pro Realtime 22.04 LTS linux-realtime-6.8 6.8.1-1041.42~22.04.1 USN-8028-2
Ubuntu Pro FIPS-updates 24.04 LTS linux-aws-fips 6.8.0-1046.49+fips1 USN-8028-4
Ubuntu Pro FIPS-updates 24.04 LTS linux-azure-fips 6.8.0-1046.52+fips1 USN-8074-2
Ubuntu Pro FIPS-updates 24.04 LTS linux-fips 6.8.0-100.100+fips1 USN-8028-4
Ubuntu Pro FIPS-updates 24.04 LTS linux-gcp-fips 6.8.0-1047.50+fips1 USN-8031-2
Ubuntu Pro FIPS-updates 22.04 LTS linux-fips +3 No fix yet —
Ubuntu Pro FIPS-preview 22.04 LTS linux-fips +3 No fix yet —
Ubuntu Pro 20.04 LTS linux-aws-5.15 +10 No fix yet —
ReleasePackageFixed inAdvisory
SLES 15 SP7 kernel-64kb +6 6.4.0-150700.53.16.1 SUSE-SU-2025:03290-1
SLES 15 SP7 kernel-azure +1 6.4.0-150700.20.15.2 SUSE-SU-2025:03633-1
SLES 15 SP7 kernel-default-base 6.4.0-150700.53.16.1.150700.17.11.2 SUSE-SU-2025:03290-1
SLES 15 SP7 kernel-syms-azure 6.4.0-150700.20.15.1 SUSE-SU-2025:03633-1
SLES 15 SP6 kernel-64kb +6 6.4.0-150600.23.70.1 SUSE-SU-2025:03301-1
SLES 15 SP6 kernel-azure +2 6.4.0-150600.8.52.1 SUSE-SU-2025:03634-1
SLES 15 SP6 kernel-coco +3 6.4.0-15061.32.coco15sp6.1 SUSE-SU-2025:03602-1
SLES 15 SP6 kernel-default-base 6.4.0-150600.23.70.1.150600.12.30.2 SUSE-SU-2025:03301-1
Show 9 more (older releases, extended support, other products)
ReleasePackageFixed inAdvisory
SLES for SAP 16.0 kernel-64kb +8 6.12.0-160000.26.1 SUSE-SU-2026:20599-1
SLES for SAP 16.0 kernel-default-base 6.12.0-160000.26.1.160000.2.7 SUSE-SU-2026:20599-1
SLES 16.0 kernel-64kb +8 6.12.0-160000.26.1 SUSE-SU-2026:20615-1, SUSE-SU-2026:20599-1
SLES 16.0 kernel-default-base 6.12.0-160000.26.1.160000.2.7 SUSE-SU-2026:20599-1
SLE Micro 6.2 kernel-default-base 6.12.0-160000.26.1.160000.2.7 SUSE-SU-2026:20555-1
SLE Micro 6.2 kernel-rt +5 6.12.0-160000.26.1 SUSE-SU-2026:20570-1, SUSE-SU-2026:20555-1
SLE Micro 6.1 kernel-default-base 6.4.0-34.1.21.11 SUSE-SU-2025:20669-1
SLE Micro 6.1 kernel-rt +1 6.4.0-36.1 SUSE-SU-2025:20756-1
SLE Micro 6.1 kernel-source +2 6.4.0-34.1 SUSE-SU-2025:20669-1
SLE Micro 6.0 kernel-default-base 6.4.0-34.1.21.11 SUSE-SU-2025:20653-1
SLE Micro 6.0 kernel-rt +1 6.4.0-36.1 SUSE-SU-2025:20739-1
SLE Micro 6.0 kernel-source +2 6.4.0-34.1 SUSE-SU-2025:20653-1
SLE Live Patching 15 SP7 kernel-default 6.4.0-150700.53.16.1 SUSE-SU-2025:03290-1
SLE Live Patching 15 SP7 kernel-livepatch-SLE15-SP7-RT_Update_4 1-150700.1.3.2 SUSE-SU-2025:03382-1
SLE Live Patching 15 SP7 kernel-livepatch-SLE15-SP7_Update_4 1-150700.15.3.2 SUSE-SU-2025:03290-1
SLE Live Patching 15 SP6 kernel-default 6.4.0-150600.23.70.1 SUSE-SU-2025:03301-1
SLE Live Patching 15 SP6 kernel-livepatch-SLE15-SP6-RT_Update_15 1-150600.1.3.1 SUSE-SU-2025:03272-1
SLE Live Patching 15 SP6 kernel-livepatch-SLE15-SP6_Update_15 1-150600.13.3.2 SUSE-SU-2025:03301-1
SUSE Real Time Module 15 SP7 kernel-rt +2 6.4.0-150700.7.16.1 SUSE-SU-2025:03382-1
SUSE Real Time Module 15 SP6 kernel-rt +3 6.4.0-150600.10.52.1 SUSE-SU-2025:03272-1
ReleasePackageFixed inAdvisory
openSUSE Leap 16.0 kernel-default-base 6.12.0-160000.26.1.160000.2.7 openSUSE-SU-2026:20287-1
openSUSE Leap 16.0 kernel-rt +11 6.12.0-160000.26.1 openSUSE-SU-2026:20287-1
openSUSE Leap 15.6 dtb-aarch64 +10 6.4.0-150600.23.70.1 SUSE-SU-2025:03301-1
openSUSE Leap 15.6 kernel-azure +2 6.4.0-150600.8.52.1 SUSE-SU-2025:03634-1
openSUSE Leap 15.6 kernel-default-base 6.4.0-150600.23.70.1.150600.12.30.2 SUSE-SU-2025:03301-1
openSUSE Leap 15.6 kernel-rt +3 6.4.0-150600.10.52.1 SUSE-SU-2025:03272-1

Azure Linux

ReleasePackageFixed inAdvisory
Azure Linux 3 kernel 6.6.104.2-1 —
Azure Linux 2 (CBL-Mariner) kernel No fix yet —

Oracle Linux

ReleasePackageFixed inAdvisory
Oracle Linux 9 kernel-uek +34 6.12.0-103.40.4.1.el10uek ELSA-2025-20551

Advisories 41

References