[dpdk-stable] [dpdk-dev] [PATCH v2] net: prepare the outer ipv4 hdr for checksum

Thomas Monjalon thomas at monjalon.net
Thu Jul 22 21:53:31 CEST 2021


07/07/2021 11:14, Mohsin Kazmi:
> On Wed, Jun 30, 2021 at 3:09 PM Olivier Matz <olivier.matz at 6wind.com> wrote:
> > > +     if (ol_flags & (PKT_TX_OUTER_IPV4 | PKT_TX_OUTER_IPV6)) {
> > >               inner_l3_offset += m->outer_l2_len + m->outer_l3_len;
> > > +             /*
> > > +              * prepare outer ipv4 header checksum by setting it to 0,
> > > +              * in order to be computed by hardware NICs.
> > > +              */
> > > +             if (ol_flags & PKT_TX_OUTER_IP_CKSUM) {
> > > +                     ipv4_hdr = rte_pktmbuf_mtod_offset(m,
> > > +                                     struct rte_ipv4_hdr *,
> > m->outer_l2_len);
> > > +                     ipv4_hdr->hdr_checksum = 0;
> > > +             }
> > > +     }
> >
> > What about outer L4 checksum? Does it requires the same than inner?
> >
> I am using XL710 for my testing with i40e dpdk driver. AFAIK, It doesn't
> support outer l4 checksum. I am not sure if other Intel NICs support it.

This function is used by a lot of drivers.
Try git grep rte_net_intel_cksum_prepare

I think we need more reviews on the v3.
Given it is far from being a new bug, I suggest to wait the next release
in order to have more feedbacks.




More information about the stable mailing list