CVE-2025-38011
Medium · 5.5CVSS
5.5
EPSS
0.2%
Published
Jun 18, 2025
CISA due date
—
Cloudanix analysis
A bug in Linux graphics handling for AMD cards could leak memory when programs close if interrupted by signals, and the fix ensures the cleanup always completes without interruption.
- Exploitation
- Local Privilege
- Attacker needs
- Low Privilege
- Complexity
- Low
- Impact
- Denial Of Service
- Component
- OS kernel
- Class
- Other
- Remediation
- Upgrade
- Effort
- Medium
- Patch risk
- Low
What it actually does
The flaw permits an interruptible wait on the GPU VM lock during CSA unmap and VM teardown on process exit in the amdgpu driver, allowing signals to abort the operation and leave memory allocations unreleased, producing the amdgpu_driver_postclose_kms backtrace.
Why it matters to the business
Linux systems with AMD GPUs may experience gradual memory exhaustion or repeated kernel warnings after graphics process termination, increasing operational overhead and risk of instability on servers or workstations with frequent process churn.
How an attack unfolds
A local user starts a graphics process that allocates AMD GPU VM resources, then exits while delivering signals that interrupt the vm lock acquisition in the unmap path, triggering the memory leak condition before the uninterruptible fix was applied.
How to fix it
Upgrade the Linux kernel to a version containing commit 8d2979b9bb1be0f4a52dff600e56d780403e04ac or later stable releases; apply the Mageia imagemagick update to 6.8.9.9-4.2.mga5 where the package is present.
How to confirm the fix worked
Confirm the running kernel contains the referenced commit; reproduce process exit under signal load and verify absence of the amdgpu_driver_postclose_kms warning and associated memory growth.
Typical attack path
- Obtain local shell access on an affected kernel
- Launch an application that initializes amdgpu GPU contexts
- Cause process termination while signals are pending
- Trigger repeated exits to accumulate leaked GPU VM memory
How to detect it
Search kernel logs and dmesg for the exact backtrace containing amdgpu_driver_postclose_kms, drm_file_free, and get_signal calls that indicate an interrupted vm lock during exit.
What your security team should do
- Prioritize kernel package updates on all AMD GPU hosts
- Add kernel log monitoring for amdgpu postclose warnings
- Restrict local unprivileged access on systems that cannot be immediately patched
The record
In the Linux kernel, the following vulnerability has been resolved: drm/amdgpu: csa unmap use uninterruptible lock After process exit to unmap csa and free GPU vm, if signal is accepted and then waiting to take vm lock is interrupted and return, it causes memory leaking and below warning backtrace. Change to use uninterruptible wait lock fix the issue. WARNING: CPU: 69 PID: 167800 at amd/amdgpu/amdgpu_kms.c:1525 amdgpu_driver_postclose_kms+0x294/0x2a0 [amdgpu] Call Trace: <TASK> drm_file_free.part.0+0x1da/0x230 [drm] drm_close_helper.isra.0+0x65/0x70 [drm] drm_release+0x6a/0x120 [drm] amdgpu_drm_release+0x51/0x60 [amdgpu] __fput+0x9f/0x280 ____fput+0xe/0x20 task_work_run+0x67/0xa0 do_exit+0x217/0x3c0 do_group_exit+0x3b/0xb0 get_signal+0x14a/0x8d0 arch_do_signal_or_restart+0xde/0x100 exit_to_user_mode_loop+0xc1/0x1a0 exit_to_user_mode_prepare+0xf4/0x100 syscall_exit_to_user_mode+0x17/0x40 do_syscall_64+0x69/0xc0 (cherry picked from commit 7dbbfb3c171a6f63b01165958629c9c26abf38ab)
Affected packages
| Ecosystem | Package | Introduced | Fixed |
|---|---|---|---|
| Debian:11 | linux | 0 | No fix |
| Debian:12 | linux | 0 | No fix |
| Debian:13 | linux | 0 | 6.12.30-1 |
| Linux | Kernel | 6.6.0 | 6.12.30 |
| Linux | Kernel | 6.6.0 | 6.6.122 |
| SUSE:Enterprise Storage 7.1 | kernel-64kb | 0 | 5.3.18-150300.59.221.1 |
| SUSE:Enterprise Storage 7.1 | kernel-default | 0 | 5.3.18-150300.59.221.1 |
| SUSE:Enterprise Storage 7.1 | kernel-default-base | 0 | 5.3.18-150300.59.221.1.150300.18.132.1 |
| SUSE:Enterprise Storage 7.1 | kernel-docs | 0 | 5.3.18-150300.59.221.1 |
| SUSE:Enterprise Storage 7.1 | kernel-obs-build | 0 | 5.3.18-150300.59.221.1 |
| SUSE:Enterprise Storage 7.1 | kernel-preempt | 0 | 5.3.18-150300.59.221.1 |
| SUSE:Enterprise Storage 7.1 | kernel-source | 0 | 5.3.18-150300.59.221.1 |
| SUSE:Enterprise Storage 7.1 | kernel-syms | 0 | 5.3.18-150300.59.221.1 |
| SUSE:Linux Enterprise High Availability Extension 15 SP3 | kernel-default | 0 | 5.3.18-150300.59.221.1 |
| SUSE:Linux Enterprise High Availability Extension 15 SP6 | kernel-default | 0 | 6.4.0-150600.23.60.5 |
| SUSE:Linux Enterprise High Performance Computing 15 SP3-LTSS | kernel-64kb | 0 | 5.3.18-150300.59.221.1 |
| SUSE:Linux Enterprise High Performance Computing 15 SP3-LTSS | kernel-default | 0 | 5.3.18-150300.59.221.1 |
| SUSE:Linux Enterprise High Performance Computing 15 SP3-LTSS | kernel-default-base | 0 | 5.3.18-150300.59.221.1.150300.18.132.1 |
| SUSE:Linux Enterprise High Performance Computing 15 SP3-LTSS | kernel-docs | 0 | 5.3.18-150300.59.221.1 |
| SUSE:Linux Enterprise High Performance Computing 15 SP3-LTSS | kernel-obs-build | 0 | 5.3.18-150300.59.221.1 |
| SUSE:Linux Enterprise High Performance Computing 15 SP3-LTSS | kernel-preempt | 0 | 5.3.18-150300.59.221.1 |
| SUSE:Linux Enterprise High Performance Computing 15 SP3-LTSS | kernel-source | 0 | 5.3.18-150300.59.221.1 |
| SUSE:Linux Enterprise High Performance Computing 15 SP3-LTSS | kernel-syms | 0 | 5.3.18-150300.59.221.1 |
| SUSE:Linux Enterprise Live Patching 15 SP3 | kernel-default | 0 | 5.3.18-150300.59.221.1 |
| SUSE:Linux Enterprise Live Patching 15 SP3 | kernel-livepatch-SLE15-SP3_Update_62 | 0 | 1-150300.7.3.1 |
| SUSE:Linux Enterprise Live Patching 15 SP6 | kernel-default | 0 | 6.4.0-150600.23.60.5 |
| SUSE:Linux Enterprise Live Patching 15 SP6 | kernel-livepatch-SLE15-SP6-RT_Update_13 | 0 | 1-150600.1.5.1 |
| SUSE:Linux Enterprise Live Patching 15 SP6 | kernel-livepatch-SLE15-SP6_Update_13 | 0 | 1-150600.13.6.4 |
| SUSE:Linux Enterprise Micro 5.1 | kernel-default | 0 | 5.3.18-150300.59.221.1 |
| SUSE:Linux Enterprise Micro 5.1 | kernel-default-base | 0 | 5.3.18-150300.59.221.1.150300.18.132.1 |
| SUSE:Linux Enterprise Micro 5.2 | kernel-default | 0 | 5.3.18-150300.59.221.1 |
| SUSE:Linux Enterprise Micro 5.2 | kernel-default-base | 0 | 5.3.18-150300.59.221.1.150300.18.132.1 |
| SUSE:Linux Enterprise Module for Basesystem 15 SP6 | kernel-64kb | 0 | 6.4.0-150600.23.60.4 |
| SUSE:Linux Enterprise Module for Basesystem 15 SP6 | kernel-default | 0 | 6.4.0-150600.23.60.5 |
| SUSE:Linux Enterprise Module for Basesystem 15 SP6 | kernel-default-base | 0 | 6.4.0-150600.23.60.5.150600.12.26.4 |
| SUSE:Linux Enterprise Module for Basesystem 15 SP6 | kernel-source | 0 | 6.4.0-150600.23.60.4 |
| SUSE:Linux Enterprise Module for Basesystem 15 SP6 | kernel-zfcpdump | 0 | 6.4.0-150600.23.60.4 |
| SUSE:Linux Enterprise Module for Confidential Computing Technical Preview 15 SP6 | kernel-coco | 0 | 6.4.0-15061.28.coco15sp6.1 |
| SUSE:Linux Enterprise Module for Confidential Computing Technical Preview 15 SP6 | kernel-coco_debug | 0 | 6.4.0-15061.28.coco15sp6.1 |
| SUSE:Linux Enterprise Module for Confidential Computing Technical Preview 15 SP6 | kernel-source-coco | 0 | 6.4.0-15061.28.coco15sp6.1 |
| SUSE:Linux Enterprise Module for Confidential Computing Technical Preview 15 SP6 | kernel-syms-coco | 0 | 6.4.0-15061.28.coco15sp6.1 |
| SUSE:Linux Enterprise Module for Development Tools 15 SP6 | kernel-docs | 0 | 6.4.0-150600.23.60.3 |
| SUSE:Linux Enterprise Module for Development Tools 15 SP6 | kernel-obs-build | 0 | 6.4.0-150600.23.60.3 |
| SUSE:Linux Enterprise Module for Development Tools 15 SP6 | kernel-source | 0 | 6.4.0-150600.23.60.4 |
| SUSE:Linux Enterprise Module for Development Tools 15 SP6 | kernel-syms | 0 | 6.4.0-150600.23.60.4 |
| SUSE:Linux Enterprise Module for Legacy 15 SP6 | kernel-default | 0 | 6.4.0-150600.23.60.5 |
| SUSE:Linux Enterprise Module for Public Cloud 15 SP6 | kernel-azure | 0 | 6.4.0-150600.8.43.1 |
| SUSE:Linux Enterprise Module for Public Cloud 15 SP6 | kernel-source-azure | 0 | 6.4.0-150600.8.43.1 |
| SUSE:Linux Enterprise Module for Public Cloud 15 SP6 | kernel-syms-azure | 0 | 6.4.0-150600.8.43.1 |
| SUSE:Linux Enterprise Server 15 SP3-LTSS | kernel-64kb | 0 | 5.3.18-150300.59.221.1 |
| SUSE:Linux Enterprise Server 15 SP3-LTSS | kernel-default | 0 | 5.3.18-150300.59.221.1 |
| SUSE:Linux Enterprise Server 15 SP3-LTSS | kernel-default-base | 0 | 5.3.18-150300.59.221.1.150300.18.132.1 |
| SUSE:Linux Enterprise Server 15 SP3-LTSS | kernel-docs | 0 | 5.3.18-150300.59.221.1 |
| SUSE:Linux Enterprise Server 15 SP3-LTSS | kernel-obs-build | 0 | 5.3.18-150300.59.221.1 |
| SUSE:Linux Enterprise Server 15 SP3-LTSS | kernel-preempt | 0 | 5.3.18-150300.59.221.1 |
| SUSE:Linux Enterprise Server 15 SP3-LTSS | kernel-source | 0 | 5.3.18-150300.59.221.1 |
| SUSE:Linux Enterprise Server 15 SP3-LTSS | kernel-syms | 0 | 5.3.18-150300.59.221.1 |
| SUSE:Linux Enterprise Server 15 SP3-LTSS | kernel-zfcpdump | 0 | 5.3.18-150300.59.221.1 |
| SUSE:Linux Enterprise Server for SAP Applications 15 SP3 | kernel-default | 0 | 5.3.18-150300.59.221.1 |
| SUSE:Linux Enterprise Server for SAP Applications 15 SP3 | kernel-default-base | 0 | 5.3.18-150300.59.221.1.150300.18.132.1 |
| SUSE:Linux Enterprise Server for SAP Applications 15 SP3 | kernel-docs | 0 | 5.3.18-150300.59.221.1 |
| SUSE:Linux Enterprise Server for SAP Applications 15 SP3 | kernel-obs-build | 0 | 5.3.18-150300.59.221.1 |
| SUSE:Linux Enterprise Server for SAP Applications 15 SP3 | kernel-preempt | 0 | 5.3.18-150300.59.221.1 |
| SUSE:Linux Enterprise Server for SAP Applications 15 SP3 | kernel-source | 0 | 5.3.18-150300.59.221.1 |
| SUSE:Linux Enterprise Server for SAP Applications 15 SP3 | kernel-syms | 0 | 5.3.18-150300.59.221.1 |
| SUSE:Linux Enterprise Workstation Extension 15 SP6 | kernel-default | 0 | 6.4.0-150600.23.60.5 |
| SUSE:Real Time Module 15 SP6 | kernel-rt | 0 | 6.4.0-150600.10.44.1 |
| SUSE:Real Time Module 15 SP6 | kernel-rt_debug | 0 | 6.4.0-150600.10.44.1 |
| SUSE:Real Time Module 15 SP6 | kernel-source-rt | 0 | 6.4.0-150600.10.44.1 |
| SUSE:Real Time Module 15 SP6 | kernel-syms-rt | 0 | 6.4.0-150600.10.44.1 |
| openSUSE:Leap 15.6 | dtb-aarch64 | 0 | 6.4.0-150600.23.60.3 |
| openSUSE:Leap 15.6 | kernel-64kb | 0 | 6.4.0-150600.23.60.4 |
| openSUSE:Leap 15.6 | kernel-azure | 0 | 6.4.0-150600.8.43.1 |
| openSUSE:Leap 15.6 | kernel-debug | 0 | 6.4.0-150600.23.60.4 |
| openSUSE:Leap 15.6 | kernel-default | 0 | 6.4.0-150600.23.60.5 |
| openSUSE:Leap 15.6 | kernel-default-base | 0 | 6.4.0-150600.23.60.5.150600.12.26.4 |
| openSUSE:Leap 15.6 | kernel-docs | 0 | 6.4.0-150600.23.60.3 |
| openSUSE:Leap 15.6 | kernel-kvmsmall | 0 | 6.4.0-150600.23.60.4 |
| openSUSE:Leap 15.6 | kernel-obs-build | 0 | 6.4.0-150600.23.60.3 |
| openSUSE:Leap 15.6 | kernel-obs-qa | 0 | 6.4.0-150600.23.60.2 |
| openSUSE:Leap 15.6 | kernel-rt | 0 | 6.4.0-150600.10.44.1 |
| openSUSE:Leap 15.6 | kernel-rt_debug | 0 | 6.4.0-150600.10.44.1 |
| openSUSE:Leap 15.6 | kernel-source | 0 | 6.4.0-150600.23.60.4 |
| openSUSE:Leap 15.6 | kernel-source-azure | 0 | 6.4.0-150600.8.43.1 |
| openSUSE:Leap 15.6 | kernel-source-rt | 0 | 6.4.0-150600.10.44.1 |
| openSUSE:Leap 15.6 | kernel-syms | 0 | 6.4.0-150600.23.60.4 |
| openSUSE:Leap 15.6 | kernel-syms-azure | 0 | 6.4.0-150600.8.43.1 |
| openSUSE:Leap 15.6 | kernel-syms-rt | 0 | 6.4.0-150600.10.44.1 |
| openSUSE:Leap 15.6 | kernel-zfcpdump | 0 | 6.4.0-150600.23.60.4 |
| openSUSE:Tumbleweed | kernel-source | 0 | 6.16.9-1.1 |
Related vulnerabilities
- CVE-2025-39885 In the Linux kernel, the following vulnerability has been resolved: ocfs2: fix recursive… Also affects linux
- CVE-2025-39883 In the Linux kernel, the following vulnerability has been resolved: mm/memory-failure… Also affects linux
- CVE-2025-39876 In the Linux kernel, the following vulnerability has been resolved: net: fec: Fix… Also affects linux
- CVE-2025-39869 In the Linux kernel, the following vulnerability has been resolved: dmaengine: ti: edma… Also affects linux
- CVE-2025-39873 In the Linux kernel, the following vulnerability has been resolved: can: xilinx_can… Also affects linux
- CVE-2025-39863 In the Linux kernel, the following vulnerability has been resolved: wifi: brcmfmac: fix… Also affects linux
- CVE-2025-39865 In the Linux kernel, the following vulnerability has been resolved: tee: fix NULL pointer… Also affects linux
- CVE-2025-39866 In the Linux kernel, the following vulnerability has been resolved: fs: writeback: fix… Also affects linux