CVE-2026-43170Linux内核dwc3驱动程序存在一处安全漏洞。由于`dwc3_gadget_vbus_draw`函数可能在原子上下文中被调用,而其内部调用的电源管理API包含可能会睡眠的操作,从而触发内核崩溃。本地低权限攻击者可利用此漏洞导致系统拒绝服务。
该漏洞位于Linux内核的DWC3 USB Gadget驱动中。核心问题在于`dwc3_gadget_vbus_draw`函数可以在原子上下文(例如中断上下文或持有自旋锁时)中被调用。该函数内部进一步调用了电源管理核心的API。然而,底层PMIC驱动中的某些操作涉及I2C通信或其他可能引起进程睡眠的机制。在禁止睡眠的原子上下文中执行这些可睡眠操作会导致内核检测到非法的调度请求,从而引发“Scheduling while atomic”错误,导致内核崩溃。修复方案是将该操作移至工作队列中执行,以确保其在进程上下文中运行。