-----Original Message----- > Date: Fri, 5 Oct 2018 09:44:43 +0300 > From: Andrew Rybchenko <[email protected]> > To: Jerin Jacob <[email protected]>, John McNamara > <[email protected]>, Marko Kovacevic <[email protected]> > CC: [email protected], [email protected], [email protected], > [email protected], [email protected] > Subject: Re: [dpdk-dev] [PATCH 1/2] doc: clarify L3 Tx checksum prerequisite > User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:60.0) Gecko/20100101 > Thunderbird/60.0 > > External Email > > On 10/5/18 7:46 AM, Jerin Jacob wrote: > > Based on PKT_TX_IP_CKSUM definition the user needs > to fill l2_len and l3_len mbuf fields before issuing > HW Tx checksum request. > > Fixes: dad1ec72a377 ("doc: document NIC features") > Cc: [email protected]<mailto:[email protected]> > > Signed-off-by: Jerin Jacob > <[email protected]><mailto:[email protected]> > > Acked-by: Andrew Rybchenko > <[email protected]><mailto:[email protected]> > > plus one question below > > > --- > > See PKT_TX_IP_CKSUM at > https://git.dpdk.org/dpdk/tree/lib/librte_mbuf/rte_mbuf.h#n283 > > --- > doc/guides/nics/features.rst | 1 + > 1 file changed, 1 insertion(+) > > diff --git a/doc/guides/nics/features.rst b/doc/guides/nics/features.rst > index b085bda86..e726a6bb8 100644 > --- a/doc/guides/nics/features.rst > +++ b/doc/guides/nics/features.rst > @@ -562,6 +562,7 @@ Supports L3 checksum offload. > * **[uses] rte_eth_txconf,rte_eth_txmode**: > ``offloads:DEV_TX_OFFLOAD_IPV4_CKSUM``. > * **[uses] mbuf**: ``mbuf.ol_flags:PKT_TX_IP_CKSUM``, > ``mbuf.ol_flags:PKT_TX_IPV4`` | ``PKT_TX_IPV6``. > > Shouldn't PKT_TX_IPV6 be removed above since L3 checksum offload is not > applicable for IPv6?
I think, some HW(What I am aware of) need to provide following[1] info in Tx descriptors for checksum. IPV6 may be used by the HW in case, packet is tunneled to see where inner start etc(thought it has outer_l3_len)(not strictly from outer checksum perspective) [1] - IPV4 - IPV4 with csum - IPV6 > > > > +* **[uses] mbuf**: ``mbuf.l2_len``, ``mbuf.l3_len``. > * **[provides] mbuf**: ``mbuf.ol_flags:PKT_RX_IP_CKSUM_UNKNOWN`` | > ``PKT_RX_IP_CKSUM_BAD`` | ``PKT_RX_IP_CKSUM_GOOD`` | > ``PKT_RX_IP_CKSUM_NONE``. > >

