From mboxrd@z Thu Jan 1 00:00:00 1970 From: bugzilla@dpdk.org Subject: [Bug 96] mlx5: TX error for multi-seg packet where first segment has 14~18 bytes Date: Thu, 18 Oct 2018 20:06:30 +0000 Message-ID: Mime-Version: 1.0 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable To: dev@dpdk.org Return-path: List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" https://bugs.dpdk.org/show_bug.cgi?id=3D96 Bug ID: 96 Summary: mlx5: TX error for multi-seg packet where first segment has 14~18 bytes Product: DPDK Version: 18.08 Hardware: x86 OS: Linux Status: CONFIRMED Severity: normal Priority: Normal Component: ethdev Assignee: dev@dpdk.org Reporter: sunnylandh@gmail.com Target Milestone: --- Created attachment 14 --> https://bugs.dpdk.org/attachment.cgi?id=3D14&action=3Dedit program to reproduce bug mlx5 driver fails to transmit a 2-segment packet where the first segment has 14, 15, 16, or 17 bytes. mlx5 driver reports "mlx5_tx_complete(): unexpected error CQE, Tx stopped" error when transmitting a 2-segment packet where the first segment has 18 bytes. Steps to Reproduce: 1) Use a fiber to connect two ConnectX-5 or ConnectX-4 Ethernet adapters together. 2) Run `ip link set NETDEV mtu 9000` to increase MTU. 3) Run tcpdump to observe traffic on the second Ethernet adapter. 4) Execute the attached tx-firstseg18.c program on the first Ethernet adapt= er. Actual Results: 1) tcpdump does not receive any packets. 2) The program reports "mlx5_tx_complete(): unexpected error CQE, Tx stoppe= d". Expected Results: 1) tcpdump receives packets. Build Date & Hardware: 1) Ubuntu 18.04 Server, with gcc 7.3.0 2) DPDK 18.08, with the following config: CONFIG_RTE_LIBRTE_MLX5_PMD=3Dy CONFIG_RTE_LIBRTE_MLX5_DEBUG=3Dy CONFIG_RTE_LIBRTE_MBUF_DEBUG=3Dy 3) Mellanox Technologies MT27800 Family [ConnectX-5] Mellanox Technologies MT27700 Family [ConnectX-4] Additional Information: In the attached tx-firstseg18.c program, there's a line "#define SIZE_OF_FIRST_SEG (sizeof(ethhdr) + 4)". Changing the number "4" to 0, 1, 2= , or 3 makes the "mlx5_tx_complete(): unexpected error CQE, Tx stopped" error disappear, but tcpdump still does not receive packets. Changing the number = "4" to 5 or greater causes everything to work, i.e. no error and tcpdump receiv= es packets. --=20 You are receiving this mail because: You are the assignee for the bug.=