[dpdk-dev] [PATCH v2 2/3] examples/ip_fragmentation: Enabling IP checksum offload in mbuf
Ananyev, Konstantin
konstantin.ananyev at intel.com
Mon May 20 10:15:51 CEST 2019
> -----Original Message-----
> From: Sunil Kumar Kori [mailto:skori at marvell.com]
> Sent: Monday, May 20, 2019 9:09 AM
> To: Ananyev, Konstantin <konstantin.ananyev at intel.com>; dev at dpdk.org
> Subject: RE: [dpdk-dev] [PATCH v2 2/3] examples/ip_fragmentation: Enabling IP checksum offload in mbuf
>
> Hi,
>
> Regards
> Sunil Kumar Kori
>
> >-----Original Message-----
> >From: Ananyev, Konstantin <konstantin.ananyev at intel.com>
> >Sent: Saturday, May 18, 2019 8:51 PM
> >To: Sunil Kumar Kori <skori at marvell.com>; dev at dpdk.org
> >Subject: [EXT] RE: [dpdk-dev] [PATCH v2 2/3] examples/ip_fragmentation:
> >Enabling IP checksum offload in mbuf
> >
> >External Email
> >
> >----------------------------------------------------------------------
> >
> >
> >> -----Original Message-----
> >> From: dev [mailto:dev-bounces at dpdk.org] On Behalf Of Sunil Kumar Kori
> >> Sent: Thursday, May 16, 2019 12:42 PM
> >> To: dev at dpdk.org
> >> Cc: skori at marvell.com
> >> Subject: [dpdk-dev] [PATCH v2 2/3] examples/ip_fragmentation: Enabling IP
> >checksum offload in mbuf
> >>
> >> As per the documentation to use any IP offload features, application
> >> must set required offload flags into mbuf->ol_flags.
> >>
> >> Signed-off-by: Sunil Kumar Kori <skori at marvell.com>
> >> ---
> >> examples/ip_fragmentation/main.c | 7 +++++--
> >> 1 file changed, 5 insertions(+), 2 deletions(-)
> >>
> >> diff --git a/examples/ip_fragmentation/main.c
> >b/examples/ip_fragmentation/main.c
> >> index e90a61e..d821967 100644
> >> --- a/examples/ip_fragmentation/main.c
> >> +++ b/examples/ip_fragmentation/main.c
> >> @@ -354,10 +354,13 @@ struct rte_lpm6_config lpm6_config = {
> >>
> >> /* src addr */
> >> ether_addr_copy(&ports_eth_addr[port_out], ð_hdr-
> >>s_addr);
> >> - if (ipv6)
> >> + if (ipv6) {
> >> eth_hdr->ether_type =
> >rte_be_to_cpu_16(ETHER_TYPE_IPv6);
> >> - else
> >> + m->ol_flags |= PKT_TX_IPV6;
> >
> >Is there is any point to do that?
> >This sample app, as I remember doesn't request any extra HW offloads.
> >Same comment for patch #3.
> >Konstantin
> >
> >
> Is this comment valid for IPv6 only ?
Yes, my comment is about the following line of code:
m->ol_flags |= PKT_TX_IPV6;
> Otherwise for IPv4, it is required as IP checksum is neither being updated by library nor
> by the application.
> >> + } else {
> >> eth_hdr->ether_type =
> >rte_be_to_cpu_16(ETHER_TYPE_IPv4);
> >> + m->ol_flags |= (PKT_TX_IPV4 | PKT_TX_IP_CKSUM);
> >> + }
> >> }
> >>
> >> len += len2;
> >> --
> >> 1.8.3.1
More information about the dev
mailing list