From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id F307AA054A; Tue, 25 Oct 2022 12:14:21 +0200 (CEST) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 95A2C427FF; Tue, 25 Oct 2022 12:14:21 +0200 (CEST) Received: from shelob.oktetlabs.ru (shelob.oktetlabs.ru [91.220.146.113]) by mails.dpdk.org (Postfix) with ESMTP id 9019B41143 for ; Tue, 25 Oct 2022 12:14:20 +0200 (CEST) Received: from [192.168.38.17] (aros.oktetlabs.ru [192.168.38.17]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits)) (No client certificate requested) by shelob.oktetlabs.ru (Postfix) with ESMTPSA id 202C85E; Tue, 25 Oct 2022 13:14:20 +0300 (MSK) DKIM-Filter: OpenDKIM Filter v2.11.0 shelob.oktetlabs.ru 202C85E DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=oktetlabs.ru; s=default; t=1666692860; bh=LtguKogIJALl1HI3WMFANgS10bVxgBOHHIWX1ihw/Dc=; h=Date:Subject:To:Cc:References:From:In-Reply-To:From; b=rkOpRK9N8QfK4/b8q7RlHTFjbq9WRsufWfTU/QMFCcFTVJrcxXaUzEhn0AXPpwY7Q LFRT8ObPicxsNcfrQV/c7RBy51aERf5CEAZSkwGH3SsNjGuwwf7RB7OPgMjxPq9j+d Ff/zF5EIRCQJf6jJD2h9mFicZsYwKiCHEhjl570U= Message-ID: <999381a9-64c2-64d4-22c4-799ed285d667@oktetlabs.ru> Date: Tue, 25 Oct 2022 13:14:19 +0300 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.3.0 Subject: Re: [PATCH v11 16/18] net/idpf: add support for Tx offloading Content-Language: en-US To: Junfeng Guo , qi.z.zhang@intel.com, jingjing.wu@intel.com, beilei.xing@intel.com Cc: dev@dpdk.org, Xiaoyun Li References: <20221024130134.1046536-2-junfeng.guo@intel.com> <20221024131227.1062446-1-junfeng.guo@intel.com> <20221024131227.1062446-17-junfeng.guo@intel.com> From: Andrew Rybchenko Organization: OKTET Labs In-Reply-To: <20221024131227.1062446-17-junfeng.guo@intel.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org On 10/24/22 16:12, Junfeng Guo wrote: > Add Tx offloading support: > - support TSO > > Signed-off-by: Beilei Xing > Signed-off-by: Xiaoyun Li > Signed-off-by: Junfeng Guo [snip] > diff --git a/drivers/net/idpf/idpf_rxtx.c b/drivers/net/idpf/idpf_rxtx.c > index 143c8b69f3..8f82cf1b59 100644 > --- a/drivers/net/idpf/idpf_rxtx.c > +++ b/drivers/net/idpf/idpf_rxtx.c [snip] > @@ -1968,16 +2070,44 @@ idpf_prep_pkts(__rte_unused void *tx_queue, struct rte_mbuf **tx_pkts, > uint16_t nb_pkts) > { > int i, ret; > + uint64_t ol_flags; > struct rte_mbuf *m; > > for (i = 0; i < nb_pkts; i++) { > m = tx_pkts[i]; > + ol_flags = m->ol_flags; > + > + /* Check condition for nb_segs > IDPF_TX_MAX_MTU_SEG. */ > + if ((ol_flags & RTE_MBUF_F_TX_TCP_SEG) == 0) { > + if (m->nb_segs > IDPF_TX_MAX_MTU_SEG) { > + rte_errno = EINVAL; > + return i; > + } It is non-TSO branch and it should be here before the patch. > + } else if ((m->tso_segsz < IDPF_MIN_TSO_MSS) || > + (m->tso_segsz > IDPF_MAX_TSO_MSS) || > + (m->pkt_len > IDPF_MAX_TSO_FRAME_SIZE)) { > + /* MSS outside the range are considered malicious */ > + rte_errno = EINVAL; > + return i; > + } > + > + if ((ol_flags & IDPF_TX_OFFLOAD_NOTSUP_MASK) != 0) { > + rte_errno = ENOTSUP; > + return i; > + } > > if (m->pkt_len < IDPF_MIN_FRAME_SIZE) { > rte_errno = EINVAL; > return i; > } > > +#ifdef RTE_LIBRTE_ETHDEV_DEBUG > + ret = rte_validate_tx_offload(m); > + if (ret != 0) { > + rte_errno = -ret; > + return i; > + } > +#endif > ret = rte_net_intel_cksum_prepare(m); > if (ret != 0) { > rte_errno = -ret; [snip]