From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-wm0-f65.google.com (mail-wm0-f65.google.com [74.125.82.65]) by dpdk.org (Postfix) with ESMTP id F38251B6B9 for ; Thu, 9 Nov 2017 14:54:12 +0100 (CET) Received: by mail-wm0-f65.google.com with SMTP id b14so2038390wme.2 for ; Thu, 09 Nov 2017 05:54:12 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:content-transfer-encoding:mime-version:subject:message-id:date :to; bh=SCnuYPFwTZ3pIFf8sY7BH4qgdfNLi9M6f6eJj9LudLk=; b=FPnGZdyTr4h4ebIpkpRmKgqKwPFkHileAMBybCE7/vY8ijU2zPGmruuK8g3YtRVZMl AKJxq6neqSGqX+gUIMPd/WI1tVJT0vv/Z31csArOaqC0SY9NiM6D7sWf5BvcTDW6FTcy jYUO9pw4oAhHh0qcCw2/8NU40cUb9A9hS1UE+JUzsvMBXVuydhfGwvhbaJrA81KkrT8U jWgmm3M7DTC6J3Uvktzx61cY75dCQFkYjwwWUZKJQkVXTlmTMYjrIVA07zLhIAzEKdEa 6NZIVbgfwH+WqSAOeTXLN3TlcHbxzuZ+HHx+BnByO5XLhcfPnrF9sqp39+WGXQxd0t62 GEFQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:content-transfer-encoding:mime-version :subject:message-id:date:to; bh=SCnuYPFwTZ3pIFf8sY7BH4qgdfNLi9M6f6eJj9LudLk=; b=VR7tIqFbpLbArJzDjPryY4KeR/FYrlm2BhjGp42DWjwNRvacZwP2vt6lqkQbo/wAU4 2+TxZWU6tW0F57p0VDxIbMs5aG2Fp5ZZ/QT1eesVBqaYWGAyR7XlG9vQo2wc+XzQg9Ff qZIKbWuxQbmYkWULY8cbrAjNfyWfTzMK1ji7p7Mz9kvjsZ0Jk9bZUuq4ceYo5rN/XcI6 0CLhrd1BW1nHD3IQhRzelmc8PMwsOWnbWr6bfLTKUy8bflB5Hbt+9vKBhFifQ+jshL6F 6VBTrEAZZFKjP/yHfkAlN1DIIgFjgBiKD8UhInyKF8JhT2QrwkW/k7jqbLUUdAjp1ODp FtgQ== X-Gm-Message-State: AJaThX4lUE8DovQbLzffaUBrJSCIxlFW3PI0318hgCHdxe6CQwWLAgER MMLnIJMDAHNts9j9adQN2H2JK7JS X-Google-Smtp-Source: ABhQp+SGXCH4IA9wtLXnVqYTtWSZz0Ztxge5QUqRHaFz/u4wqylAFoyjY0Sl/UTLB5n8U4GnVrmr2g== X-Received: by 10.80.196.3 with SMTP id v3mr750670edf.272.1510235652512; Thu, 09 Nov 2017 05:54:12 -0800 (PST) Received: from [10.61.0.167] (bba193485.alshamil.net.ae. [217.165.96.191]) by smtp.gmail.com with ESMTPSA id c32sm6059755eda.57.2017.11.09.05.54.11 for (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Thu, 09 Nov 2017 05:54:12 -0800 (PST) From: Ilya Matveychikov Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: quoted-printable Mime-Version: 1.0 (Mac OS X Mail 10.3 \(3273\)) Message-Id: Date: Thu, 9 Nov 2017 17:54:09 +0400 To: dev@dpdk.org X-Mailer: Apple Mail (2.3273) Subject: [dpdk-dev] [PATCH] drivers/net: fix for incomplete nb_segs type change X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 09 Nov 2017 13:54:13 -0000 Fixes: 97cb466d ("mbuf: use 2 bytes for port and nb segments") Signed-off-by: Ilya V. Matveychikov --- drivers/net/ark/ark_ethdev_rx.c | 2 +- drivers/net/i40e/i40e_rxtx.c | 9 +++------ drivers/net/ixgbe/ixgbe_rxtx.c | 2 +- drivers/net/qede/qede_rxtx.c | 4 ++-- drivers/net/szedata2/rte_eth_szedata2.c | 2 +- 5 files changed, 8 insertions(+), 11 deletions(-) diff --git a/drivers/net/ark/ark_ethdev_rx.c = b/drivers/net/ark/ark_ethdev_rx.c index f39e6f6..0717f30 100644 --- a/drivers/net/ark/ark_ethdev_rx.c +++ b/drivers/net/ark/ark_ethdev_rx.c @@ -357,7 +357,7 @@ eth_ark_rx_jumbo(struct ark_rx_queue *queue, uint16_t remaining; uint16_t data_len; - uint8_t segments; + uint16_t segments; /* first buf populated by called */ mbuf_prev =3D mbuf0; diff --git a/drivers/net/i40e/i40e_rxtx.c b/drivers/net/i40e/i40e_rxtx.c index ae64de6..f7191ce 100644 --- a/drivers/net/i40e/i40e_rxtx.c +++ b/drivers/net/i40e/i40e_rxtx.c @@ -1473,13 +1473,10 @@ i40e_prep_pkts(__rte_unused void *tx_queue, = struct rte_mbuf **tx_pkts, m =3D tx_pkts[i]; ol_flags =3D m->ol_flags; - /** - * m->nb_segs is uint8_t, so nb_segs is always less than - * I40E_TX_MAX_SEG. - * We check only a condition for nb_segs > = I40E_TX_MAX_MTU_SEG. - */ + /* Check for m->nb_segs to not exceed the limits. */ if (!(ol_flags & PKT_TX_TCP_SEG)) { - if (m->nb_segs > I40E_TX_MAX_MTU_SEG) { + if (m->nb_segs > I40E_TX_MAX_SEG || + m->nb_segs > I40E_TX_MAX_MTU_SEG) { rte_errno =3D -EINVAL; return i; } diff --git a/drivers/net/ixgbe/ixgbe_rxtx.c = b/drivers/net/ixgbe/ixgbe_rxtx.c index 64bff25..f296033 100644 --- a/drivers/net/ixgbe/ixgbe_rxtx.c +++ b/drivers/net/ixgbe/ixgbe_rxtx.c @@ -2588,7 +2588,7 @@ ixgbe_dev_tx_queue_setup(struct rte_eth_dev *dev, static void __attribute__((cold)) ixgbe_free_sc_cluster(struct rte_mbuf *m) { - uint8_t i, nb_segs =3D m->nb_segs; + uint16_t i, nb_segs =3D m->nb_segs; struct rte_mbuf *next_seg; for (i =3D 0; i < nb_segs; i++) { diff --git a/drivers/net/qede/qede_rxtx.c b/drivers/net/qede/qede_rxtx.c index 0de28c7..37c3a84 100644 --- a/drivers/net/qede/qede_rxtx.c +++ b/drivers/net/qede/qede_rxtx.c @@ -1380,14 +1380,14 @@ qede_recv_pkts(void *p_rxq, struct rte_mbuf = **rx_pkts, uint16_t nb_pkts) /* Populate scatter gather buffer descriptor fields */ -static inline uint8_t +static inline uint16_t qede_encode_sg_bd(struct qede_tx_queue *p_txq, struct rte_mbuf *m_seg, struct eth_tx_2nd_bd **bd2, struct eth_tx_3rd_bd = **bd3) { struct qede_tx_queue *txq =3D p_txq; struct eth_tx_bd *tx_bd =3D NULL; dma_addr_t mapping; - uint8_t nb_segs =3D 0; + uint16_t nb_segs =3D 0; /* Check for scattered buffers */ while (m_seg) { diff --git a/drivers/net/szedata2/rte_eth_szedata2.c = b/drivers/net/szedata2/rte_eth_szedata2.c index 9c0d57c..2ca563a 100644 --- a/drivers/net/szedata2/rte_eth_szedata2.c +++ b/drivers/net/szedata2/rte_eth_szedata2.c @@ -682,7 +682,7 @@ eth_szedata2_tx(void *queue, uint32_t hwpkt_len; uint32_t unlock_size; uint32_t rem_len; - uint8_t mbuf_segs; + uint16_t mbuf_segs; uint16_t pkt_left =3D nb_pkts; if (sze_q->sze =3D=3D NULL || nb_pkts =3D=3D 0) -- 2.7.4=