In the Linux kernel, the following vulnerability has been resolved:
workqueue: Do not warn when cancelling WQ_MEM_RECLAIM work from !WQ_MEM_RECLAIM worker
After commit 746ae46c1113 ("drm/sched: Mark scheduler work queues with WQ_MEM_RECLAIM") amdgpu started seeing the following warning:
[ ] workqueue: WQ_MEM_RECLAIM sdma0:drm_sched_run_job_work [gpu_sched] is flushing !WQ_MEM_RECLAIM events:amdgpu_device_delay_enable_gfx_off [amdgpu] ... [ ] Workqueue: sdma0 drm_sched_run_job_work [gpu_sched] ... [ ] Call Trace: [ ] <TASK> ... [ ] ? check_flush_dependency+0xf5/0x110 ... [ ] cancel_delayed_work_sync+0x6e/0x80 [ ] amdgpu_gfx_off_ctrl+0xab/0x140 [amdgpu] [ ] amdgpu_ring_alloc+0x40/0x50 [amdgpu] [ ] amdgpu_ib_schedule+0xf4/0x810 [amdgpu] [ ] ? drm_sched_run_job_work+0x22c/0x430 [gpu_sched] [ ] amdgpu_job_run+0xaa/0x1f0 [amdgpu] [ ] drm_sched_run_job_work+0x257/0x430 [gpu_sched] [ ] process_one_work+0x217/0x720 ... [ ] </TASK>
The intent of the verifcation done in check_flush_depedency is to ensure forward progress during memory reclaim, by flagging cases when either a memory reclaim process, or a memory reclaim work item is flushed from a context not marked as memory reclaim safe.
This is correct when flushing, but when called from the cancel(_delayed)_work_sync() paths it is a false positive because work is either already running, or will not be running at all. Therefore cancelling it is safe and we can relax the warning criteria by letting the helper know of the calling context.
References: 746ae46c1113 ("drm/sched: Mark scheduler work queues with WQ_MEM_RECLAIM")
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 |
|---|---|---|---|---|
| Debian | — | Upgrade linux | May 15, 2025 | Jan 15, 2025 |
| Huawei Euleros 2_0_sp11 | — | Upgrade kernel-tools-libsUpgrade kernel-toolsUpgrade kernel-abi-stablelistsUpgrade bpftoolUpgrade kernelUpgrade python3-perf | Apr 11, 2025 | Jan 15, 2025 |
| Huawei Euleros 2_0_sp12 | — | Upgrade kernelUpgrade kernel-abi-stablelistsUpgrade bpftoolUpgrade python3-perfUpgrade kernel-tools-libsUpgrade kernel-tools | May 7, 2025 | Jan 15, 2025 |
| Huawei Euleros 2_0_sp13 | — | Upgrade kernel-toolsUpgrade kernelUpgrade kernel-abi-stablelistsUpgrade kernel-tools-libsUpgrade python3-perfUpgrade bpftool | Apr 1, 2025 | Jan 15, 2025 |
| Redhat_linux | — | Upgrade kernelNo solution existsUpgrade kernel-rt | May 15, 2025 | Jan 15, 2025 |
| Ubuntu | — | Upgrade linux-image-6.8.1-1022-realtimeUpgrade linux-image-oem-22.04dUpgrade linux-image-gcp-64kUpgrade linux-image-kvmUpgrade linux-image-oracle-64k-lts-24.04Upgrade linux-image-6.8.0-1030-gcp-64kUpgrade linux-image-6.11.0-1012-azureUpgrade linux-image-6.11.0-1011-gcp-64kUpgrade linux-image-6.11.0-1017-oemUpgrade linux-image-generic-64kUpgrade linux-image-virtual-hwe-22.04Upgrade linux-image-6.11.0-1011-gcpUpgrade linux-image-6.11.0-1013-oracle-64kUpgrade linux-image-azure-lts-24.04Upgrade linux-image-nvidia-lowlatencyUpgrade linux-image-realtime-hwe-24.04Upgrade linux-image-lowlatencyUpgrade linux-image-6.11.0-21-generic-64kUpgrade linux-image-nvidia-6.8Upgrade linux-image-lowlatency-hwe-22.04Upgrade linux-image-gcp-lts-24.04Upgrade linux-image-6.11.0-1011-lowlatencyUpgrade linux-image-6.8.0-1028-nvidia-64kUpgrade linux-image-oem-22.04cUpgrade linux-image-oracle-lts-24.04Upgrade linux-image-6.11.0-1013-oracleUpgrade linux-image-azure-fde-lts-24.04Upgrade linux-image-gcp-64k-lts-24.04Upgrade linux-image-6.8.0-1026-ibmUpgrade linux-image-ibmUpgrade linux-image-6.8.0-1028-nvidiaUpgrade linux-image-raspiUpgrade linux-image-ibm-lts-24.04Upgrade linux-image-aws-lts-24.04Upgrade linux-image-azure-nvidiaUpgrade linux-image-genericUpgrade linux-image-6.8.0-1012-gkeopUpgrade linux-image-6.8.0-1026-oracle-64kUpgrade linux-image-6.11.0-1007-realtimeUpgrade linux-image-6.8.0-2023-raspi-realtimeUpgrade linux-image-azure-fdeUpgrade linux-image-6.8.0-60-genericUpgrade linux-image-azureUpgrade linux-image-nvidiaUpgrade linux-image-6.8.0-60-lowlatencyUpgrade linux-image-6.8.0-1028-raspiUpgrade linux-image-6.8.0-1025-gkeUpgrade linux-image-oem-22.04aUpgrade linux-image-oracle-64kUpgrade linux-image-gcpUpgrade linux-image-6.11.0-1011-awsUpgrade linux-image-raspi-realtimeUpgrade linux-image-6.8.0-60-lowlatency-64kUpgrade linux-image-generic-hwe-24.04Upgrade linux-image-nvidia-hwe-22.04Upgrade linux-image-6.8.0-1030-gcpUpgrade linux-image-oem-24.04bUpgrade linux-image-oem-24.04aUpgrade linux-image-nvidia-64k-6.8Upgrade linux-image-lowlatency-64k-hwe-22.04Upgrade linux-image-6.8.0-1028-oemUpgrade linux-image-6.11.0-1011-lowlatency-64kUpgrade linux-image-6.8.0-1026-oracleUpgrade linux-image-6.8.0-1029-awsUpgrade linux-image-lowlatency-64kUpgrade linux-image-nvidia-64kUpgrade linux-image-lowlatency-hwe-24.04Upgrade linux-image-generic-64k-hwe-24.04Upgrade linux-image-generic-lpaeUpgrade linux-image-ibm-classicUpgrade linux-image-virtual-hwe-24.04Upgrade linux-image-6.8.0-1029-azure-fdeUpgrade linux-image-6.8.0-1028-nvidia-lowlatency-64kUpgrade linux-image-6.8.0-1028-nvidia-lowlatencyUpgrade linux-image-6.8.0-1016-azure-nvidiaUpgrade linux-image-oem-22.04Upgrade linux-image-gkeUpgrade linux-image-virtualUpgrade linux-image-nvidia-lowlatency-64kUpgrade linux-image-generic-64k-hwe-22.04Upgrade linux-image-6.11.0-1012-azure-fdeUpgrade linux-image-6.11.0-1010-raspiUpgrade linux-image-oracleUpgrade linux-image-gkeop-6.8Upgrade linux-image-6.11.0-21-genericUpgrade linux-image-oem-22.04bUpgrade linux-image-6.8.0-60-generic-64kUpgrade linux-image-nvidia-64k-hwe-22.04Upgrade linux-image-generic-hwe-22.04Upgrade linux-image-oem-24.04Upgrade linux-image-6.8.0-1029-azureUpgrade linux-image-realtimeUpgrade linux-image-lowlatency-64k-hwe-24.04Upgrade linux-image-gkeopUpgrade linux-image-aws | Mar 28, 2025 | Jan 15, 2025 |
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