Home

Description

In the Linux kernel, the following vulnerability has been resolved: net/mlx5e: Fix DMA FIFO desync on error CQE SQ recovery In case of a TX error CQE, a recovery flow is triggered, mlx5e_reset_txqsq_cc_pc() resets dma_fifo_cc to 0 but not dma_fifo_pc, desyncing the DMA FIFO producer and consumer. After recovery, the producer pushes new DMA entries at the old dma_fifo_pc, while the consumer reads from position 0. This causes us to unmap stale DMA addresses from before the recovery. The DMA FIFO is a purely software construct with no HW counterpart. At the point of reset, all WQEs have been flushed so dma_fifo_cc is already equal to dma_fifo_pc. There is no need to reset either counter, similar to how skb_fifo pc/cc are untouched. Remove the 'dma_fifo_cc = 0' reset. This fixes the following WARNING: WARNING: CPU: 0 PID: 0 at drivers/iommu/dma-iommu.c:1240 iommu_dma_unmap_page+0x79/0x90 Modules linked in: mlx5_vdpa vringh vdpa bonding mlx5_ib mlx5_vfio_pci ipip mlx5_fwctl tunnel4 mlx5_core ib_ipoib geneve ip6_gre ip_gre gre nf_tables ip6_tunnel rdma_ucm ib_uverbs ib_umad vfio_pci vfio_pci_core act_mirred act_skbedit act_vlan vhost_net vhost tap ip6table_mangle ip6table_nat ip6table_filter ip6_tables iptable_mangle cls_matchall nfnetlink_cttimeout act_gact cls_flower sch_ingress vhost_iotlb iptable_raw tunnel6 vfio_iommu_type1 vfio openvswitch nsh rpcsec_gss_krb5 auth_rpcgss oid_registry xt_conntrack xt_MASQUERADE nf_conntrack_netlink nfnetlink iptable_nat nf_nat xt_addrtype br_netfilter overlay zram zsmalloc rpcrdma ib_iser libiscsi scsi_transport_iscsi rdma_cm iw_cm ib_cm ib_core fuse [last unloaded: nf_tables] CPU: 0 UID: 0 PID: 0 Comm: swapper/0 Not tainted 6.13.0-rc5_for_upstream_min_debug_2024_12_30_21_33 #1 Hardware name: QEMU Standard PC (Q35 + ICH9, 2009), BIOS rel-1.13.0-0-gf21b5a4aeb02-prebuilt.qemu.org 04/01/2014 RIP: 0010:iommu_dma_unmap_page+0x79/0x90 Code: 2b 4d 3b 21 72 26 4d 3b 61 08 73 20 49 89 d8 44 89 f9 5b 4c 89 f2 4c 89 e6 48 89 ef 5d 41 5c 41 5d 41 5e 41 5f e9 c7 ae 9e ff <0f> 0b 5b 5d 41 5c 41 5d 41 5e 41 5f c3 66 2e 0f 1f 84 00 00 00 00 Call Trace: <IRQ> ? __warn+0x7d/0x110 ? iommu_dma_unmap_page+0x79/0x90 ? report_bug+0x16d/0x180 ? handle_bug+0x4f/0x90 ? exc_invalid_op+0x14/0x70 ? asm_exc_invalid_op+0x16/0x20 ? iommu_dma_unmap_page+0x79/0x90 ? iommu_dma_unmap_page+0x2e/0x90 dma_unmap_page_attrs+0x10d/0x1b0 mlx5e_tx_wi_dma_unmap+0xbe/0x120 [mlx5_core] mlx5e_poll_tx_cq+0x16d/0x690 [mlx5_core] mlx5e_napi_poll+0x8b/0xac0 [mlx5_core] __napi_poll+0x24/0x190 net_rx_action+0x32a/0x3b0 ? mlx5_eq_comp_int+0x7e/0x270 [mlx5_core] ? notifier_call_chain+0x35/0xa0 handle_softirqs+0xc9/0x270 irq_exit_rcu+0x71/0xd0 common_interrupt+0x7f/0xa0 </IRQ> <TASK> asm_common_interrupt+0x22/0x40

PUBLISHED Reserved 2026-05-01 | Published 2026-05-08 | Updated 2026-05-08 | Assigner Linux

Product status

Default status
unaffected

db75373c91b0cfb6a68ad6ae88721e4e21ae6261 (git) before 821f85d619f7f22cda7b9d7de89cf5eeb1d11544
affected

db75373c91b0cfb6a68ad6ae88721e4e21ae6261 (git) before 6eb68ecc5acc3b319986566c595990b8a7265b23
affected

db75373c91b0cfb6a68ad6ae88721e4e21ae6261 (git) before 6f41f7812bfa7f991b732a4b45c5c52fc4be3b4e
affected

db75373c91b0cfb6a68ad6ae88721e4e21ae6261 (git) before 383b37c04a4827ba60b2bafc1a6cdfd995aed58f
affected

db75373c91b0cfb6a68ad6ae88721e4e21ae6261 (git) before 9c5ee9b981ee050b73fdf3f4a2464d6f1a8e10a8
affected

db75373c91b0cfb6a68ad6ae88721e4e21ae6261 (git) before ce1b19dd0684eeb68a124c11085bd611260b36d9
affected

db75373c91b0cfb6a68ad6ae88721e4e21ae6261 (git) before 829efcccfa8f69db5dc8332961295587d218cee6
affected

db75373c91b0cfb6a68ad6ae88721e4e21ae6261 (git) before 1633111d69053512d099658d4a05fc736fab36b0
affected

Default status
affected

4.17
affected

Any version before 4.17
unaffected

5.10.253 (semver)
unaffected

5.15.203 (semver)
unaffected

6.1.167 (semver)
unaffected

6.6.130 (semver)
unaffected

6.12.78 (semver)
unaffected

6.18.19 (semver)
unaffected

6.19.9 (semver)
unaffected

7.0 (original_commit_for_fix)
unaffected

References

git.kernel.org/...c/821f85d619f7f22cda7b9d7de89cf5eeb1d11544

git.kernel.org/...c/6eb68ecc5acc3b319986566c595990b8a7265b23

git.kernel.org/...c/6f41f7812bfa7f991b732a4b45c5c52fc4be3b4e

git.kernel.org/...c/383b37c04a4827ba60b2bafc1a6cdfd995aed58f

git.kernel.org/...c/9c5ee9b981ee050b73fdf3f4a2464d6f1a8e10a8

git.kernel.org/...c/ce1b19dd0684eeb68a124c11085bd611260b36d9

git.kernel.org/...c/829efcccfa8f69db5dc8332961295587d218cee6

git.kernel.org/...c/1633111d69053512d099658d4a05fc736fab36b0

cve.org (CVE-2026-43466)

nvd.nist.gov (CVE-2026-43466)

Download JSON