[PATCH v3 1/8] ethdev: add IPv6 routing extension header definition

Rongwei Liu rongweil at nvidia.com
Tue Jan 31 04:24:35 CET 2023


Hi Stephen

BR
Rongwei

> -----Original Message-----
> From: Stephen Hemminger <stephen at networkplumber.org>
> Sent: Tuesday, January 31, 2023 11:02
> To: Rongwei Liu <rongweil at nvidia.com>
> Cc: Matan Azrad <matan at nvidia.com>; Slava Ovsiienko
> <viacheslavo at nvidia.com>; Ori Kam <orika at nvidia.com>; NBU-Contact-
> Thomas Monjalon (EXTERNAL) <thomas at monjalon.net>; Aman Singh
> <aman.deep.singh at intel.com>; Yuying Zhang <yuying.zhang at intel.com>;
> Ferruh Yigit <ferruh.yigit at amd.com>; Andrew Rybchenko
> <andrew.rybchenko at oktetlabs.ru>; Olivier Matz <olivier.matz at 6wind.com>;
> dev at dpdk.org; Raslan Darawsheh <rasland at nvidia.com>
> Subject: Re: [PATCH v3 1/8] ethdev: add IPv6 routing extension header
> definition
> 
> External email: Use caution opening links or attachments
> 
> 
> On Mon, 30 Jan 2023 05:59:33 +0200
> Rongwei Liu <rongweil at nvidia.com> wrote:
> 
> > +/**
> > + * @warning
> > + * @b EXPERIMENTAL: this structure may change without prior notice
> > + *
> > + * RTE_FLOW_ITEM_TYPE_IPV6_ROUTING_EXT.
> > + *
> > + * Matches an IPv6 routing extension header.
> > + */
> > +struct rte_flow_item_ipv6_routing_ext {
> > +     struct rte_ipv6_routing_ext hdr; };
> 
> The problem with nesting a variable length structure inside another structure
> is not allowed.
> 
> The issue is that the applicaiton would have to pass a variable length structure
> in for the flow definition. The flow item is variable length for this type? all the
> others are fixed length.
> 
Yeah, segments_left is uint8 per definition. RFC doesn't set an upper limitation.
It stands for intermediate routing nodes between src and dst nodes.
> One option would be to get rid of the wrapper structure.
Yeah, it works. @Andrew Rybchenko  Can you share your preference here?



More information about the dev mailing list