net/mlx5e: Add fragmented memory support for RX multi packet WQE
[cascardo/linux.git] / drivers / net / ethernet / mellanox / mlx5 / core / en_tx.c
index 1ffc7cb..229ab16 100644 (file)
@@ -54,10 +54,11 @@ void mlx5e_send_nop(struct mlx5e_sq *sq, bool notify_hw)
 
        sq->skb[pi] = NULL;
        sq->pc++;
+       sq->stats.nop++;
 
        if (notify_hw) {
                cseg->fm_ce_se = MLX5_WQE_CTRL_CQ_UPDATE;
-               mlx5e_tx_notify_hw(sq, wqe, 0);
+               mlx5e_tx_notify_hw(sq, &wqe->ctrl, 0);
        }
 }
 
@@ -309,7 +310,7 @@ static netdev_tx_t mlx5e_sq_xmit(struct mlx5e_sq *sq, struct sk_buff *skb)
                        bf_sz = wi->num_wqebbs << 3;
 
                cseg->fm_ce_se = MLX5_WQE_CTRL_CQ_UPDATE;
-               mlx5e_tx_notify_hw(sq, wqe, bf_sz);
+               mlx5e_tx_notify_hw(sq, &wqe->ctrl, bf_sz);
        }
 
        /* fill sq edge with nops to avoid wqe wrap around */
@@ -387,7 +388,6 @@ bool mlx5e_poll_tx_cq(struct mlx5e_cq *cq, int napi_budget)
                        wi = &sq->wqe_info[ci];
 
                        if (unlikely(!skb)) { /* nop */
-                               sq->stats.nop++;
                                sqcc++;
                                continue;
                        }