diff options
author | 2024-06-04 00:22:13 +0300 | |
---|---|---|
committer | 2024-06-05 20:20:46 -0700 | |
commit | f5a699e00f045856b55a60ebf57e367fca389910 (patch) | |
tree | c526b287abe3cdf265708c74513d0d73039675dc | |
parent | net/mlx5e: SHAMPO, Specialize mlx5e_fill_skb_data() (diff) | |
download | wireguard-linux-f5a699e00f045856b55a60ebf57e367fca389910.tar.xz wireguard-linux-f5a699e00f045856b55a60ebf57e367fca389910.zip |
net/mlx5e: SHAMPO, Skipping on duplicate flush of the same SHAMPO SKB
SHAMPO SKB can be flushed in mlx5e_shampo_complete_rx_cqe().
If the SKB was flushed, rq->hw_gro_data->skb was also set to NULL.
We can skip on flushing the SKB in mlx5e_shampo_flush_skb
if rq->hw_gro_data->skb == NULL.
Signed-off-by: Yoray Zack <yorayz@nvidia.com>
Signed-off-by: Tariq Toukan <tariqt@nvidia.com>
Link: https://lore.kernel.org/r/20240603212219.1037656-9-tariqt@nvidia.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
-rw-r--r-- | drivers/net/ethernet/mellanox/mlx5/core/en_rx.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/net/ethernet/mellanox/mlx5/core/en_rx.c b/drivers/net/ethernet/mellanox/mlx5/core/en_rx.c index 1e3a5b2afeae..3f76c33aada0 100644 --- a/drivers/net/ethernet/mellanox/mlx5/core/en_rx.c +++ b/drivers/net/ethernet/mellanox/mlx5/core/en_rx.c @@ -2334,7 +2334,7 @@ static void mlx5e_handle_rx_cqe_mpwrq_shampo(struct mlx5e_rq *rq, struct mlx5_cq } mlx5e_shampo_complete_rx_cqe(rq, cqe, cqe_bcnt, *skb); - if (flush) + if (flush && rq->hw_gro_data->skb) mlx5e_shampo_flush_skb(rq, cqe, match); free_hd_entry: if (likely(head_size)) |