> -----Original Message----- > From: dev [mailto:dev-bounces at dpdk.org] On Behalf Of > miroslaw.walukiewicz at intel.com > Sent: Monday, October 13, 2014 10:39 PM > To: dev at dpdk.org > Subject: [dpdk-dev] [PATCH 1/3] pmd: add new flag to indicate TX TSO operation > on the packet > > From: Miroslaw Walukiewicz <miroslaw.walukiewicz at intel.com> > > Transmission of TCP packets could be accelerated by HW Transmit Segmentation > Offload. With TSO packets up to 64K could be transmismitted. > > When this flag is set the PMD drived will enable TCP segmentation. > > The new field tso_segsz is added to indicate how long is TCP TSO segment. > > Signed-off-by: Mirek Walukiewicz <miroslaw.walukiewicz at intel.com> > --- > lib/librte_mbuf/rte_mbuf.h | 5 +++++ > 1 file changed, 5 insertions(+) > > diff --git a/lib/librte_mbuf/rte_mbuf.h b/lib/librte_mbuf/rte_mbuf.h index > ddadc21..63cbc36 100644 > --- a/lib/librte_mbuf/rte_mbuf.h > +++ b/lib/librte_mbuf/rte_mbuf.h > @@ -117,6 +117,9 @@ extern "C" { > /* Use final bit of flags to indicate a control mbuf */ > #define CTRL_MBUF_FLAG (1ULL << 63) /**< Mbuf contains control data */ > > +/* Bit 50 - TSO (TCP Transmit Segmenation Offload) */ > +#define PKT_TX_TCP_TSO (1ULL << 50) /**< Mbuf needs TSO enabling */
In VxLAN patch set [PATCH v5 7/8]i40e:support VxLAN Tx checksum offload, the bit (1ULL << 50) in offload flag have already been used. +#define PKT_TX_VXLAN_CKSUM (1ULL << 50) /**< TX checksum of VxLAN computed by NIC */ > /** > * Bit Mask to indicate what bits required for building TX context > */ > @@ -196,6 +199,8 @@ struct rte_mbuf { > uint16_t l2_len:7; /**< L2 (MAC) Header Length. */ > }; > }; > + /* field to support TSO segment size */ > + uint32_t tso_segsz; > } __rte_cache_aligned; > > /**