From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from out3-smtp.messagingengine.com (out3-smtp.messagingengine.com [66.111.4.27]) by dpdk.org (Postfix) with ESMTP id 69B7823A for ; Sun, 6 May 2018 08:37:20 +0200 (CEST) Received: from compute1.internal (compute1.nyi.internal [10.202.2.41]) by mailout.nyi.internal (Postfix) with ESMTP id 0E797213A3; Sun, 6 May 2018 02:37:20 -0400 (EDT) Received: from mailfrontend2 ([10.202.2.163]) by compute1.internal (MEProxy); Sun, 06 May 2018 02:37:20 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=fridaylinux.org; h=cc:date:from:message-id:subject:to:x-me-sender:x-me-sender :x-sasl-enc; s=fm2; bh=aIrkKlVwonMx/vwYmca2yCLwz83zlTNlyuoZsfRVP Tk=; b=Mu+DOTJd77xfkj2qVdJjGeS1COV3MBWjCMy6DbrvCnHko69ObLHGS6b52 YubVVR0MdvGdCZMrNe4tqMTuT6sh/L4tMoxPHG7/FJpaiSmJIh/u6ie8osVTaglu ZOQ9PWF/i5FndYLmRYidQI6gwvmdksHop7X9h3ik220gofBB3SC4mTUm9rx1+1HR b8C4b5lKfYDqBM9tECN2FylacQYmJqRTXpA4abnsHK3/Ed/CmZVxbg1XF4u81hSr t0aQijFkyStnR0LrcY0YRch3PCrYi8nqvzzxyW89pYOir5PvBBvPxTTZGSQGFEF5 deLk1rHkauzodd2wvWmdzbTUfb5lA== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:date:from:message-id:subject:to :x-me-sender:x-me-sender:x-sasl-enc; s=fm2; bh=aIrkKlVwonMx/vwYm ca2yCLwz83zlTNlyuoZsfRVPTk=; b=YMp8Q4pdRclmVsLKb//DupcUXSzqscAMG QXBxQMlTjdW2aOXMfzLw2FFxW1UvWhueCmoxf3XnjkAdlqeQt87SBt3Igybakks+ 5CwSPh/r8187Ljf0VDyIgafmiLXa3mzdZ/qt/+n89Qi5ecTVYa7qY+ObiD7bVt2D J/OnfjiO57RNiC5W11xNF3gSqTzCLZ/VbHzi5gmXhq9fBemJDP513OMXU4G5hYcZ KZoRrFdqoicmjxvAnFsTh/RqInWPa8iB1xlqBtMlJ0pNe81/Lo6kdekZiSyQ3w8e f3tqMKgnUmumZT1/UDsw+LEMQxcvP06rM4xler5s+QrUXkwSZQ9Eg== X-ME-Sender: Received: from yuanhanliu-NB0.tencent.com (unknown [223.74.148.102]) by mail.messagingengine.com (Postfix) with ESMTPA id 5172910253; Sun, 6 May 2018 02:37:16 -0400 (EDT) From: Yuanhan Liu To: Thomas Monjalon Cc: Olivier Matz , dpdk stable Date: Sun, 6 May 2018 14:36:14 +0800 Message-Id: <20180506063639.23196-1-yliu@fridaylinux.org> X-Mailer: git-send-email 2.11.0 Subject: [dpdk-stable] patch 'mbuf: fix Tx checksum offload API doc' has been queued to LTS release 17.11.3 X-BeenThere: stable@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: patches for DPDK stable branches List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 06 May 2018 06:37:20 -0000 Hi, FYI, your patch has been queued to LTS release 17.11.3 Note it hasn't been pushed to http://dpdk.org/browse/dpdk-stable yet. It will be pushed if I get no objections before 05/09/18. So please shout if anyone has objections. Thanks. --yliu --- >>From 0f01bfeeebccfdb1a1f1163e50a7c17fb241d15a Mon Sep 17 00:00:00 2001 From: Thomas Monjalon Date: Fri, 20 Apr 2018 01:39:52 +0200 Subject: [PATCH] mbuf: fix Tx checksum offload API doc [ upstream commit f00dcb7b0a74928b8b846f73b37386d7b1bb4869 ] When introducing rte_eth_tx_prepare(), the constraints on checksum pre-filling for Tx offloads were relaxed because implemented in the PMDs with rte_net_intel_cksum_flags_prepare() helper. As a consequence, these old requirements are removed for: - PKT_TX_OUTER_IP_CKSUM - PKT_TX_IP_CKSUM - PKT_TX_[L4]_CKSUM - PKT_TX_TCP_SEG Not sure SCTP offload is properly implemented though. A reference to rte_eth_tx_prepare() is added in rte_eth_tx_burst() doc. Fixes: 609dd68ef14f ("mbuf: enhance the API documentation of offload flags") Fixes: 4fb7e803eb1a ("ethdev: add Tx preparation") Signed-off-by: Thomas Monjalon Acked-by: Olivier Matz --- lib/librte_ether/rte_ethdev.h | 3 +++ lib/librte_mbuf/rte_mbuf.h | 16 +++------------- 2 files changed, 6 insertions(+), 13 deletions(-) diff --git a/lib/librte_ether/rte_ethdev.h b/lib/librte_ether/rte_ethdev.h index 2cc2eedf2..eba11ca50 100644 --- a/lib/librte_ether/rte_ethdev.h +++ b/lib/librte_ether/rte_ethdev.h @@ -3125,6 +3125,9 @@ static inline int rte_eth_tx_descriptor_status(uint16_t port_id, * invoke this function concurrently on the same tx queue without SW lock. * @see rte_eth_dev_info_get, struct rte_eth_txconf::txq_flags * + * @see rte_eth_tx_prepare to perform some prior checks or adjustments + * for offloads. + * * @param port_id * The port identifier of the Ethernet device. * @param queue_id diff --git a/lib/librte_mbuf/rte_mbuf.h b/lib/librte_mbuf/rte_mbuf.h index 16a6048c2..3966ed11e 100644 --- a/lib/librte_mbuf/rte_mbuf.h +++ b/lib/librte_mbuf/rte_mbuf.h @@ -245,12 +245,8 @@ extern "C" { * - set the PKT_TX_TCP_SEG flag in mbuf->ol_flags (this flag implies * PKT_TX_TCP_CKSUM) * - set the flag PKT_TX_IPV4 or PKT_TX_IPV6 - * - if it's IPv4, set the PKT_TX_IP_CKSUM flag and write the IP checksum - * to 0 in the packet + * - if it's IPv4, set the PKT_TX_IP_CKSUM flag * - fill the mbuf offload information: l2_len, l3_len, l4_len, tso_segsz - * - calculate the pseudo header checksum without taking ip_len in account, - * and set it in the TCP header. Refer to rte_ipv4_phdr_cksum() and - * rte_ipv6_phdr_cksum() that can be used as helpers. */ #define PKT_TX_TCP_SEG (1ULL << 50) @@ -263,9 +259,6 @@ extern "C" { * - fill l2_len and l3_len in mbuf * - set the flags PKT_TX_TCP_CKSUM, PKT_TX_SCTP_CKSUM or PKT_TX_UDP_CKSUM * - set the flag PKT_TX_IPV4 or PKT_TX_IPV6 - * - calculate the pseudo header checksum and set it in the L4 header (only - * for TCP or UDP). See rte_ipv4_phdr_cksum() and rte_ipv6_phdr_cksum(). - * For SCTP, set the crc field to 0. */ #define PKT_TX_L4_NO_CKSUM (0ULL << 52) /**< Disable L4 cksum of TX pkt. */ #define PKT_TX_TCP_CKSUM (1ULL << 52) /**< TCP cksum of TX pkt. computed by NIC. */ @@ -277,7 +270,6 @@ extern "C" { * Offload the IP checksum in the hardware. The flag PKT_TX_IPV4 should * also be set by the application, although a PMD will only check * PKT_TX_IP_CKSUM. - * - set the IP checksum field in the packet to 0 * - fill the mbuf offload information: l2_len, l3_len */ #define PKT_TX_IP_CKSUM (1ULL << 54) @@ -302,10 +294,8 @@ extern "C" { /** * Offload the IP checksum of an external header in the hardware. The - * flag PKT_TX_OUTER_IPV4 should also be set by the application, alto ugh - * a PMD will only check PKT_TX_IP_CKSUM. The IP checksum field in the - * packet must be set to 0. - * - set the outer IP checksum field in the packet to 0 + * flag PKT_TX_OUTER_IPV4 should also be set by the application, although + * a PMD will only check PKT_TX_OUTER_IP_CKSUM. * - fill the mbuf offload information: outer_l2_len, outer_l3_len */ #define PKT_TX_OUTER_IP_CKSUM (1ULL << 58) -- 2.11.0