From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mellanox.co.il (mail-il-dmz.mellanox.com [193.47.165.129]) by dpdk.org (Postfix) with ESMTP id EAD1129CA for ; Tue, 1 Nov 2016 09:13:31 +0100 (CET) Received: from Internal Mail-Server by MTLPINE1 (envelope-from eladpe@dragon18) with ESMTPS (AES256-SHA encrypted); 1 Nov 2016 10:13:31 +0200 Received: from dragon18 (r-aa-dragon18.mtr.labs.mlnx [10.209.68.155]) by labmailer.mlnx (8.13.8/8.13.8) with ESMTP id uA18DUOB016705; Tue, 1 Nov 2016 10:13:30 +0200 Received: from dragon18 (localhost [127.0.0.1]) by dragon18 (8.14.7/8.14.7) with ESMTP id uA18DUro026181; Tue, 1 Nov 2016 08:13:30 GMT Received: (from eladpe@localhost) by dragon18 (8.14.7/8.14.7/Submit) id uA18DU9a026180; Tue, 1 Nov 2016 08:13:30 GMT From: Elad Persiko To: dev@dpdk.org Date: Tue, 1 Nov 2016 08:13:27 +0000 Message-Id: <1477988007-26141-1-git-send-email-eladpe@mellanox.com> X-Mailer: git-send-email 1.8.3.1 Cc: Elad Persiko Subject: [dpdk-dev] [PATCH] net/mlx5: fix wrong use of vector instruction X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: patches and discussions about DPDK List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 01 Nov 2016 08:13:32 -0000 Constraint alignment was not respected in Tx. Fixes: 1d88ba171942 ("net/mlx5: refactor Tx data path") Signed-off-by: Elad Persiko --- drivers/net/mlx5/mlx5_rxtx.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/drivers/net/mlx5/mlx5_rxtx.c b/drivers/net/mlx5/mlx5_rxtx.c index 21164ba..ba8e202 100644 --- a/drivers/net/mlx5/mlx5_rxtx.c +++ b/drivers/net/mlx5/mlx5_rxtx.c @@ -309,7 +309,7 @@ mlx5_tx_dbrec(struct txq *txq) *txq->qp_db = htonl(txq->wqe_ci); /* Ensure ordering between DB record and BF copy. */ rte_wmb(); - rte_mov16(dst, (uint8_t *)data); + memcpy(dst, (uint8_t *)data, 16); txq->bf_offset ^= (1 << txq->bf_buf_size); } @@ -449,7 +449,7 @@ mlx5_tx_burst(void *dpdk_txq, struct rte_mbuf **pkts, uint16_t pkts_n) wqe->eseg.mss = 0; wqe->eseg.rsvd2 = 0; /* Start by copying the Ethernet Header. */ - rte_mov16((uint8_t *)raw, (uint8_t *)addr); + memcpy((uint8_t *)raw, ((uint8_t *)addr), 16); length -= MLX5_WQE_DWORD_SIZE; addr += MLX5_WQE_DWORD_SIZE; /* Replace the Ethernet type by the VLAN if necessary. */ -- 1.8.3.1