Message ID | 20240925202013.45374-2-saeed@kernel.org (mailing list archive) |
---|---|
State | Accepted |
Commit | 2bcae12c795f32ddfbf8c80d1b5f1d3286341c32 |
Delegated to: | Netdev Maintainers |
Headers | show |
Series | [net,1/8] net/mlx5: Fix error path in multi-packet WQE transmit | expand |
Hello: This series was applied to netdev/net.git (main) by Saeed Mahameed <saeedm@nvidia.com>: On Wed, 25 Sep 2024 13:20:06 -0700 you wrote: > From: Gerd Bayer <gbayer@linux.ibm.com> > > Remove the erroneous unmap in case no DMA mapping was established > > The multi-packet WQE transmit code attempts to obtain a DMA mapping for > the skb. This could fail, e.g. under memory pressure, when the IOMMU > driver just can't allocate more memory for page tables. While the code > tries to handle this in the path below the err_unmap label it erroneously > unmaps one entry from the sq's FIFO list of active mappings. Since the > current map attempt failed this unmap is removing some random DMA mapping > that might still be required. If the PCI function now presents that IOVA, > the IOMMU may assumes a rogue DMA access and e.g. on s390 puts the PCI > function in error state. > > [...] Here is the summary with links: - [net,1/8] net/mlx5: Fix error path in multi-packet WQE transmit https://git.kernel.org/netdev/net/c/2bcae12c795f - [net,2/8] net/mlx5: Added cond_resched() to crdump collection https://git.kernel.org/netdev/net/c/ec7931558941 - [net,3/8] net/mlx5e: Fix NULL deref in mlx5e_tir_builder_alloc() https://git.kernel.org/netdev/net/c/f25389e77950 - [net,4/8] net/mlx5: Fix wrong reserved field in hca_cap_2 in mlx5_ifc https://git.kernel.org/netdev/net/c/19da17010a55 - [net,5/8] net/mlx5: HWS, fixed double-free in error flow of creating SQ https://git.kernel.org/netdev/net/c/d8c561741ef8 - [net,6/8] net/mlx5: HWS, changed E2BIG error to a negative return code https://git.kernel.org/netdev/net/c/d15525f30010 - [net,7/8] net/mlx5e: SHAMPO, Fix overflow of hd_per_wq https://git.kernel.org/netdev/net/c/023d2a43ed0d - [net,8/8] net/mlx5e: Fix crash caused by calling __xfrm_state_delete() twice https://git.kernel.org/netdev/net/c/7b124695db40 You are awesome, thank you!
diff --git a/drivers/net/ethernet/mellanox/mlx5/core/en_tx.c b/drivers/net/ethernet/mellanox/mlx5/core/en_tx.c index b09e9abd39f3..f8c7912abe0e 100644 --- a/drivers/net/ethernet/mellanox/mlx5/core/en_tx.c +++ b/drivers/net/ethernet/mellanox/mlx5/core/en_tx.c @@ -642,7 +642,6 @@ mlx5e_sq_xmit_mpwqe(struct mlx5e_txqsq *sq, struct sk_buff *skb, return; err_unmap: - mlx5e_dma_unmap_wqe_err(sq, 1); sq->stats->dropped++; dev_kfree_skb_any(skb); mlx5e_tx_flush(sq);