Re: [PATCH net-next v5] net: openvswitch: IPv6: Add IPv6 extension header support

Cpp Code
2021-09-27T19:12:40Z

To use this code there is a part of code in the userspace. We want to
keep compatibility when we only update userspace part code or only
kernel part code. This means we should have same values for constants
and we can only add new ones at the end of list.

Best,
Tom

On Wed, Sep 22, 2021 at 11:02 PM Nicolas Dichtel
<nicolas.dichtel@6wind.com> wrote:
>
> Le 20/09/2021 à 20:20, Toms Atteka a écrit :
> > This change adds a new OpenFlow field OFPXMT_OFB_IPV6_EXTHDR and
> > packets can be filtered using ipv6_ext flag.
> >
> > Signed-off-by: Toms Atteka <cpp.code.lv@gmail.com>
> > ---
> > include/uapi/linux/openvswitch.h | 12 +++
> > net/openvswitch/flow.c | 140 +++++++++++++++++++++++++++++++
> > net/openvswitch/flow.h | 14 ++++
> > net/openvswitch/flow_netlink.c | 24 +++++-
> > 4 files changed, 189 insertions(+), 1 deletion(-)
> >
> > diff --git a/include/uapi/linux/openvswitch.h b/include/uapi/linux/openvswitch.h
> > index a87b44cd5590..dc6eb5f6399f 100644
> > --- a/include/uapi/linux/openvswitch.h
> > +++ b/include/uapi/linux/openvswitch.h
> > @@ -346,6 +346,13 @@ enum ovs_key_attr {
> > #ifdef __KERNEL__
> > OVS_KEY_ATTR_TUNNEL_INFO, /* struct ip_tunnel_info */
> > #endif
> > +
> > +#ifndef __KERNEL__
> > + PADDING, /* Padding so kernel and non kernel field count would match */
> > +#endif
> > +
> > + OVS_KEY_ATTR_IPV6_EXTHDRS, /* struct ovs_key_ipv6_exthdr */
> Naive question, why not moving OVS_KEY_ATTR_IPV6_EXTHDRS above
> OVS_KEY_ATTR_TUNNEL_INFO?
>
>
>
> Regards,
> Nicolas