> On 12/21/22 15:59, Stokes, Ian wrote:
> >> On 16 Sep 2022, at 12:12, Cian Ferriter wrote:
> >>
> >>> A typical NVGRE encapsulated packet starts with the ETH/IP/GRE
> >>> protocols.  Miniflow extract will parse just the ETH and IP headers. The
> >>> GRE header will be processed later as part of the pop action. Add
> >>> support for parsing the ETH/IP headers in this scenario.
> >>>
> >>> Signed-off-by: Cian Ferriter <[email protected]>
> >>> ---
> >>>  lib/dp-packet.h                   | 58 +++++++++++++++++++++++--------
> >>>  lib/dpif-netdev-extract-avx512.c  | 43 +++++++++++++++++++++--
> >>>  lib/dpif-netdev-private-extract.c | 10 ++++++
> >>>  lib/dpif-netdev-private-extract.h |  5 +++
> >>>  4 files changed, 100 insertions(+), 16 deletions(-)
> >>>
> >>> diff --git a/lib/dp-packet.h b/lib/dp-packet.h
> >>> index 55eeaab2c..230bbec27 100644
> >>
> >> Only one small nit, maybe Ilya can change on commit if he finds no other
> issues.
> >
> > Thanks for the ack Eelco, I can add the new line on the comments if Ilya 
> > has no
> other issues?
> >
> > @Ilya Maximets anything blocking from your side?
> 
> I didn't do a full review, but nothing blocking from my side at a quick 
> glance.
> 
> Best regards, Ilya Maximets.

Thanks Ilya, I've made the modification and pushed to master.

Thanks
Ian

> 
> >
> > Thanks
> > Ian
> >
> >>
> >> Acked-by: Eelco Chaudron <[email protected]>
> >>
> >>> --- a/lib/dp-packet.h
> >>> +++ b/lib/dp-packet.h
> >>> @@ -1089,8 +1089,28 @@ dp_packet_l4_checksum_bad(const struct
> >> dp_packet *p)
> >>>              DP_PACKET_OL_RX_L4_CKSUM_BAD;
> >>>  }
> >>>
> >>> +static inline uint32_t ALWAYS_INLINE
> >>> +dp_packet_calc_hash_ipv4(const uint8_t *pkt, const uint16_t l3_ofs,
> >>> +                         uint32_t hash)
> >>> +{
> >>> +    const void *ipv4_src = &pkt[l3_ofs + offsetof(struct ip_header, 
> >>> ip_src)];
> >>> +    const void *ipv4_dst = &pkt[l3_ofs + offsetof(struct ip_header, 
> >>> ip_dst)];
> >>> +    uint32_t ip_src, ip_dst;
> >>> +
> >>> +    memcpy(&ip_src, ipv4_src, sizeof ip_src);
> >>> +    memcpy(&ip_dst, ipv4_dst, sizeof ip_dst);
> >>> +
> >>> +    /* IPv4 Src and Dst. */
> >>> +    hash = hash_add(hash, ip_src);
> >>> +    hash = hash_add(hash, ip_dst);
> >>
> >> Add cr/lf before comments.
> >>
> >>> +    /* IPv4 proto. */
> >>> +    hash = hash_add(hash, pkt[l3_ofs + offsetof(struct ip_header,
> ip_proto)]);
> >>
> >> <SNIP>

_______________________________________________
dev mailing list
[email protected]
https://mail.openvswitch.org/mailman/listinfo/ovs-dev

Reply via email to