CVE-2026-43199Linux内核net/mlx5e驱动在处理IPsec MAC地址查询时存在漏洞。该漏洞由于在原子上下文的工作队列中调用了可休眠的硬件查询函数,导致系统出现“scheduling while atomic”错误,进而引发内核崩溃或拒绝服务。
漏洞源于`net/mlx5e/ipsec.c`中的`mlx5e_ipsec_init_macs`函数。该函数被`mlx5e_ipsec_handle_event`工作队列调用,处于原子上下文。原代码调用`mlx5_query_mac_address`查询硬件MAC,该函数内部通过`mlx5_cmd_exec`与硬件通信,包含`schedule_timeout`等可休眠操作。在原子上下文中执行休眠操作违反内核规则,导致内核panic。修复方案是将硬件查询改为直接从`netdev->dev_addr`拷贝MAC地址,避免调用可能阻塞的函数。