CVE-2025-37897: wifi: plfxlc: Remove erroneous assert in plfxlc_mac_release
In the Linux kernel, the following vulnerability has been resolved:
wifi: plfxlc: Remove erroneous assert in plfxlcmacrelease
plfxlcmacrelease() asserts that mac->lock is held. This assertion is incorrect, because even if it was possible, it would not be the valid behaviour. The function is used when probe fails or after the device is disconnected. In both cases mac->lock can not be held as the driver is not working with the device at the moment. All functions that use mac->lock unlock it just after it was held. There is also no need to hold mac->lock for plfxlcmacrelease() itself, as mac data is not affected, except for mac->flags, which is modified atomically.
This bug leads to the following warning: ================================================================ WARNING: CPU: 0 PID: 127 at drivers/net/wireless/purelifi/plfxlc/mac.c:106 plfxlcmacrelease+0x7d/0xa0 Modules linked in: CPU: 0 PID: 127 Comm: kworker/0:2 Not tainted 6.1.124-syzkaller #0 Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 09/13/2024 Workqueue: usbhubwq hubevent RIP: 0010:plfxlcmacrelease+0x7d/0xa0 drivers/net/wireless/purelifi/plfxlc/mac.c:106 Call Trace: <TASK> probe+0x941/0xbd0 drivers/net/wireless/purelifi/plfxlc/usb.c:694 usbprobeinterface+0x5c0/0xaf0 drivers/usb/core/driver.c:396 reallyprobe+0x2ab/0xcb0 drivers/base/dd.c:639 driverprobedevice+0x1a2/0x3d0 drivers/base/dd.c:785 driverprobedevice+0x50/0x420 drivers/base/dd.c:815 deviceattachdriver+0x2cf/0x510 drivers/base/dd.c:943 busforeachdrv+0x183/0x200 drivers/base/bus.c:429 deviceattach+0x359/0x570 drivers/base/dd.c:1015 busprobedevice+0xba/0x1e0 drivers/base/bus.c:489 deviceadd+0xb48/0xfd0 drivers/base/core.c:3696 usbsetconfiguration+0x19dd/0x2020 drivers/usb/core/message.c:2165 usbgenericdriverprobe+0x84/0x140 drivers/usb/core/generic.c:238 usbprobedevice+0x130/0x260 drivers/usb/core/driver.c:293 reallyprobe+0x2ab/0xcb0 drivers/base/dd.c:639 driverprobedevice+0x1a2/0x3d0 drivers/base/dd.c:785 driverprobedevice+0x50/0x420 drivers/base/dd.c:815 deviceattachdriver+0x2cf/0x510 drivers/base/dd.c:943 busforeachdrv+0x183/0x200 drivers/base/bus.c:429 deviceattach+0x359/0x570 drivers/base/dd.c:1015 busprobedevice+0xba/0x1e0 drivers/base/bus.c:489 deviceadd+0xb48/0xfd0 drivers/base/core.c:3696 usbnewdevice+0xbdd/0x18f0 drivers/usb/core/hub.c:2620 hubportconnect drivers/usb/core/hub.c:5477 [inline] hubportconnectchange drivers/usb/core/hub.c:5617 [inline] portevent drivers/usb/core/hub.c:5773 [inline] hubevent+0x2efe/0x5730 drivers/usb/core/hub.c:5855 processonework+0x8a9/0x11d0 kernel/workqueue.c:2292 workerthread+0xa47/0x1200 kernel/workqueue.c:2439 kthread+0x28d/0x320 kernel/kthread.c:376 retfromfork+0x1f/0x30 arch/x86/entry/entry64.S:295 </TASK> ================================================================
Found by Linux Verification Center (linuxtesting.org) with Syzkaller.
Affected Software
Remediation
Recommended actions to resolve this vulnerability, in priority order.
- Upgrade
Upgrade
debian/linuxto a version that resolves this vulnerability.Fixed in 6.1.176-1Fixed in 6.1.190-1Fixed in 6.12.107-1Fixed in 6.12.115-2Fixed in 7.2.12-1Fixed in 7.2.15-1 - Upgrade
Upgrade
ubuntu/linux-aws-6.8to a version that resolves this vulnerability.Fixed in 6.8.0-1046.49~22.04.1 - Upgrade
Upgrade
ubuntu/linux-azure-6.8to a version that resolves this vulnerability.Fixed in 6.8.0-1051.57~22.04.1 - Upgrade
Upgrade
ubuntu/linux-azure-fde-6.8to a version that resolves this vulnerability.Fixed in 6.8.0-1046.53~22.04.1 - Upgrade
Upgrade
ubuntu/linux-gcp-6.8to a version that resolves this vulnerability.Fixed in 6.8.0-1047.50~22.04.2 - Upgrade
Upgrade
ubuntu/linux-hwe-6.8to a version that resolves this vulnerability.Fixed in 6.8.0-100.100~22.04.1 - Upgrade
Upgrade
ubuntu/linux-ibm-6.8to a version that resolves this vulnerability.Fixed in 6.8.0-1044.44~22.04.1 - Upgrade
Upgrade
ubuntu/linux-lowlatency-hwe-6.8to a version that resolves this vulnerability.Fixed in 6.8.0-100.100.1~22.04.1 - Upgrade
Upgrade
ubuntu/linux-nvidia-6.8to a version that resolves this vulnerability.Fixed in 6.8.0-1046.49~22.04.1 - Upgrade
Upgrade
ubuntu/linux-oracle-6.8to a version that resolves this vulnerability.Fixed in 6.8.0-1043.44~22.04.1 - Upgrade
Upgrade
ubuntu/linux-riscv-6.8to a version that resolves this vulnerability.Fixed in 6.8.0-100.100~22.04.1 - Upgrade
Upgrade
ubuntu/linux-realtime-6.8to a version that resolves this vulnerability.Fixed in 6.8.1-1041.42~22.04.1 - Upgrade
Upgrade
ubuntu/linuxto a version that resolves this vulnerability.Fixed in 6.8.0-100.100 - Upgrade
Upgrade
ubuntu/linux-awsto a version that resolves this vulnerability.Fixed in 6.8.0-1046.49 - Upgrade
Upgrade
ubuntu/linux-aws-6.14to a version that resolves this vulnerability.Fixed in 6.14.0-1009.9~24.04.1 - Upgrade
Upgrade
ubuntu/linux-azureto a version that resolves this vulnerability.Fixed in 6.8.0-1046.52 - Upgrade
Upgrade
ubuntu/linux-azure-fdeto a version that resolves this vulnerability.Fixed in 6.8.0-1046.53 - Upgrade
Upgrade
ubuntu/linux-gcpto a version that resolves this vulnerability.Fixed in 6.8.0-1047.50 - Upgrade
Upgrade
ubuntu/linux-gcp-6.14to a version that resolves this vulnerability.Fixed in 6.14.0-1011.11~24.04.1 - Upgrade
Upgrade
ubuntu/linux-gketo a version that resolves this vulnerability.Fixed in 6.8.0-1043.48 - Upgrade
Upgrade
ubuntu/linux-gkeopto a version that resolves this vulnerability.Fixed in 6.8.0-1030.33 - Upgrade
Upgrade
ubuntu/linux-ibmto a version that resolves this vulnerability.Fixed in 6.8.0-1044.44 - Upgrade
Upgrade
ubuntu/linux-lowlatencyto a version that resolves this vulnerability.Fixed in 6.8.0-100.100.1 - Upgrade
Upgrade
ubuntu/linux-nvidiato a version that resolves this vulnerability.Fixed in 6.8.0-1046.49 - Upgrade
Upgrade
ubuntu/linux-nvidia-lowlatencyto a version that resolves this vulnerability.Fixed in 6.8.0-1046.49.1 - Upgrade
Upgrade
ubuntu/linux-nvidia-tegrato a version that resolves this vulnerability.Fixed in 6.8.0-1020.20 - Upgrade
Upgrade
ubuntu/linux-oem-6.14to a version that resolves this vulnerability.Fixed in 6.14.0-1007.7 - Upgrade
Upgrade
ubuntu/linux-oracleto a version that resolves this vulnerability.Fixed in 6.8.0-1043.44 - Upgrade
Upgrade
ubuntu/linux-oracle-6.14to a version that resolves this vulnerability.Fixed in 6.14.0-1009.9~24.04.1 - Upgrade
Upgrade
ubuntu/linux-raspito a version that resolves this vulnerability.Fixed in 6.8.0-1047.51 - Upgrade
Upgrade
ubuntu/linux-riscv-6.14to a version that resolves this vulnerability.Fixed in 6.14.0-24.24.1~24.04.1 - Upgrade
Upgrade
ubuntu/linux-xilinxto a version that resolves this vulnerability.Fixed in 6.8.0-1023.24 - Upgrade
Upgrade
ubuntu/linux-bluefieldto a version that resolves this vulnerability.Fixed in 6.8.0-1016.20 - Upgrade
Upgrade
ubuntu/linux-raspi-realtimeto a version that resolves this vulnerability.Fixed in 6.8.0-2037.38 - Upgrade
Upgrade
ubuntu/linux-realtimeto a version that resolves this vulnerability.Fixed in 6.8.1-1041.42 - Upgrade
Upgrade
ubuntu/linux-realtime-6.14to a version that resolves this vulnerability.Fixed in 6.14.0-1010.10~24.04.1 - Upgrade
Upgrade
ubuntu/linux-aws-fipsto a version that resolves this vulnerability.Fixed in 6.8.0-1046.49+fips1 - Upgrade
Upgrade
ubuntu/linux-azure-fipsto a version that resolves this vulnerability.Fixed in 6.8.0-1046.52+fips1 - Upgrade
Upgrade
ubuntu/linux-fipsto a version that resolves this vulnerability.Fixed in 6.8.0-100.100+fips1 - Upgrade
Upgrade
ubuntu/linux-gcp-fipsto a version that resolves this vulnerability.Fixed in 6.8.0-1047.50+fips1 - Compensating control
Remove the erroneous assertion that mac->lock is held from plfxlc_mac_release() in the Linux pureLiFi PLFXLC driver; the function is called on probe failure or device disconnection and does not need to hold mac->lock.
Event History
Frequently Asked Questions
What is the severity of CVE-2025-37897?
CVE-2025-37897 is classified as a medium severity vulnerability in the Linux kernel.
How do I fix CVE-2025-37897?
To fix CVE-2025-37897, update your Linux kernel to the latest version where the vulnerability has been patched.
What software is affected by CVE-2025-37897?
CVE-2025-37897 affects the Linux kernel across multiple versions.
What does CVE-2025-37897 involve?
CVE-2025-37897 involves removing an erroneous assertion in the plfxlc_mac_release function within the Linux kernel.
Can CVE-2025-37897 be exploited remotely?
CVE-2025-37897 does not indicate a direct remote exploitation vector, but it still may impact system stability.