At error time, the first 4 bytes of each WQE Tx block still have not
writen, so no need to stamp them because they are already stamped.

Signed-off-by: Matan Azrad <ma...@mellanox.com>
---
 drivers/net/mlx4/mlx4_rxtx.c | 22 +---------------------
 1 file changed, 1 insertion(+), 21 deletions(-)

diff --git a/drivers/net/mlx4/mlx4_rxtx.c b/drivers/net/mlx4/mlx4_rxtx.c
index 9a32b3f..1d8240a 100644
--- a/drivers/net/mlx4/mlx4_rxtx.c
+++ b/drivers/net/mlx4/mlx4_rxtx.c
@@ -468,17 +468,7 @@ struct pv {
                if (unlikely(lkey == rte_cpu_to_be_32((uint32_t)-1))) {
                        /* MR does not exist. */
                        DEBUG("%p: unable to get MP <-> MR association",
-                                       (void *)txq);
-                       /*
-                        * Restamp entry in case of failure.
-                        * Make sure that size is written correctly
-                        * Note that we give ownership to the SW, not the HW.
-                        */
-                       wqe_real_size = sizeof(struct mlx4_wqe_ctrl_seg) +
-                               buf->nb_segs * sizeof(struct mlx4_wqe_data_seg);
-                       ctrl->fence_size = (wqe_real_size >> 4) & 0x3f;
-                       mlx4_txq_stamp_freed_wqe(sq, head_idx,
-                                       (sq->head & sq->txbb_cnt) ? 0 : 1);
+                             (void *)txq);
                        return -1;
                }
                if (likely(sbuf->data_len)) {
@@ -639,16 +629,6 @@ struct pv {
                                /* MR does not exist. */
                                DEBUG("%p: unable to get MP <-> MR association",
                                      (void *)txq);
-                               /*
-                                * Restamp entry in case of failure.
-                                * Make sure that size is written correctly
-                                * Note that we give ownership to the SW,
-                                * not the HW.
-                                */
-                               ctrl->fence_size =
-                                       (WQE_ONE_DATA_SEG_SIZE >> 4) & 0x3f;
-                               mlx4_txq_stamp_freed_wqe(sq, head_idx,
-                                            (sq->head & sq->txbb_cnt) ? 0 : 1);
                                elt->buf = NULL;
                                break;
                        }
-- 
1.8.3.1

Reply via email to