CVE-2026-64122

Summary

In the Linux kernel, the following vulnerability has been resolved:

net/mlx5e: Fix use-after-free in mlx5e_tx_reporter_timeout_recover

mlx5e_tx_reporter_timeout_recover() accesses sq->netdev after mlx5e_safe_reopen_channels() has torn down and freed the channel (and its embedded SQs). Replace the three sq->netdev references with priv->netdev which is safe because priv outlives channel teardown.

The netdev_err() call already used priv->netdev for this reason; make the trylock/unlock and health_channel_eq_recover calls consistent.

This fixes the following KASAN splat:

BUG: KASAN: use-after-free in mlx5e_tx_reporter_timeout_recover+0x1dd/0x360 [mlx5_core] Read of size 8 at addr ffff889860ed0b28 by task kworker/u113:2/5277

Call Trace: mlx5e_tx_reporter_timeout_recover+0x1dd/0x360 [mlx5_core] devlink_health_reporter_recover+0xa2/0x150 devlink_health_report+0x254/0x7c0 mlx5e_reporter_tx_timeout+0x297/0x380 [mlx5_core] mlx5e_tx_timeout_work+0x109/0x170 [mlx5_core] process_one_work+0x677/0xf20 worker_thread+0x51f/0xd90 kthread+0x3a5/0x810 ret_from_fork+0x208/0x400 ret_from_fork_asm+0x1a/0x30

Affected Software

VendorProductVersion RangeStatus
LinuxLinux4329514c61abefe4961541b128c549b017bab5ad < 1604a2d68414aa4cc34faac0b7faa9c14455e8d3affected
LinuxLinux83ac0304a2d77519dae1e54c9713cbe1aedf19c9 < 152295aa7dc2c5e046606f7dadc84fce41136446affected
LinuxLinux83ac0304a2d77519dae1e54c9713cbe1aedf19c9 < 7d260c5d2d89eb2c8c528d54b576b3aae3e20231affected
LinuxLinux63f9d5fb4d8040077df801ca3270e2f02d55e0d9affected
LinuxLinux6.18.14 < 6.18.34affected
LinuxLinux6.19.4 < 6.20affected
LinuxLinux7.0affected
LinuxLinux0 < 7.0unaffected
LinuxLinux6.18.34 <= 6.18.*unaffected
LinuxLinux7.0.11 <= 7.0.*unaffected
LinuxLinux7.1 <= *unaffected

Weaknesses

References