net/mlx5e: Fix "scheduling while atomic" in IPsec MAC address query
CVE-2026-43199 · published 6 May 2026
How serious is it
- Severity: high, CVSS score 7.5 out of 10.
- No exploit prediction (EPSS) score yet.
- Not on the CISA list of exploited vulnerabilities.
- No public exploit in Exploit-DB.
Is your app affected by CVE-2026-43199?
Paste this prompt into Claude Code, Cursor or any AI coding tool: it runs a free Shippable scan of your project and fixes what it finds. Built with Lovable, Bolt or v0? Scan your live app. Or upload your package file.
Who is affected
- Linux Linux: cee137a634318bfbda18ee5af45d300153b57fa5 to < 5efde07521309274f26727860774614cbc187242, cee137a634318bfbda18ee5af45d300153b57fa5 to < e1407fb7c337373dfaaae2445d828b0b9ae26a29, cee137a634318bfbda18ee5af45d300153b57fa5 to < 57957bc7f1865778ec9b1618e15515feb6df7eb4, cee137a634318bfbda18ee5af45d300153b57fa5 to < 546de94e41e92e1f7dc6213615fb7c794d05db98
- Linux Linux: 6.2
How to check
- Find out whether you run the affected product and which version, then compare it with the versions above.
How to fix
Copies a prompt for Claude Code, Cursor or Codex that asks it to check whether you run this product.
- Apply the vendor's update or mitigation from the references below. If there is none yet, limit exposure of the affected service until there is.
- If a vulnerable version was live, check your logs and rotate the secrets that server could read.
The advisory
In the Linux kernel, the following vulnerability has been resolved:
net/mlx5e: Fix "scheduling while atomic" in IPsec MAC address query
Fix a "scheduling while atomic" bug in mlx5e_ipsec_init_macs() by
replacing mlx5_query_mac_address() with ether_addr_copy() to get the
local MAC address directly from netdev->dev_addr.
The issue occurs because mlx5_query_mac_address() queries the hardware
which involves mlx5_cmd_exec() that can sleep, but it is called from
the mlx5e_ipsec_handle_event workqueue which runs in atomic context.
The MAC address is already available in netdev->dev_addr, so no need
to query hardware. This avoids the sleeping call and resolves the bug.
Call trace:
BUG: scheduling while atomic: kworker/u112:2/69344/0x00000200
__schedule+0x7ab/0xa20
schedule+0x1c/0xb0
schedule_timeout+0x6e/0xf0
__wait_for_common+0x91/0x1b0
cmd_exec+0xa85/0xff0 [mlx5_core]
mlx5_cmd_exec+0x1f/0x50 [mlx5_core]
mlx5_query_nic_vport_mac_address+0x7b/0xd0 [mlx5_core]
mlx5_query_mac_address+0x19/0x30 [mlx5_core]
mlx5e_ipsec_init_macs+0xc1/0x720 [mlx5_core]
mlx5e_ipsec_build_accel_xfrm_attrs+0x422/0x670 [mlx5_core]
mlx5e_ipsec_handle_event+0x2b9/0x460 [mlx5_core]
process_one_work+0x178/0x2e0
worker_thread+0x2ea/0x430
Check your whole app
Dependencies are only half of it. Free and read-only: before you push, run npx shippable-dev scan localhost:3000 in your project folder, no account needed. For your live app, you prove it's yours with a one-line tag first.
References
- git.kernel.org/stable/c/5efde07521309274f26727860774614cbc187242
- git.kernel.org/stable/c/e1407fb7c337373dfaaae2445d828b0b9ae26a29
- git.kernel.org/stable/c/57957bc7f1865778ec9b1618e15515feb6df7eb4
- git.kernel.org/stable/c/546de94e41e92e1f7dc6213615fb7c794d05db98
- git.kernel.org/stable/c/859380694f434597407632c29f30fdb5e763e6cc
Merged from CVE List. Last updated 25 Oct 2026. All vulnerabilities · RSS · JSON