Re: [PATCH v2 0/1] net: geneve: accept every ethertype

From: Eyal Birger
Date: Mon Feb 27 2023 - 04:30:56 EST


Hi,

On Mon, Feb 27, 2023 at 10:19 AM Josef Miegl <josef@xxxxxxxx> wrote:
>
> The Geneve encapsulation, as defined in RFC 8926, has a Protocol Type
> field, which states the Ethertype of the payload appearing after the
> Geneve header.
>
> Commit 435fe1c0c1f7 ("net: geneve: support IPv4/IPv6 as inner protocol")
> introduced a new IFLA_GENEVE_INNER_PROTO_INHERIT flag that allowed the
> use of other Ethertypes than Ethernet. However, for a reason not known
> to me, it imposed a restriction that prohibits receiving payloads other
> than IPv4, IPv6 and Ethernet.

FWIW I added support for IPv4/IPv6 because these are the use cases I had
and could validate. I don't know what problems could arise from supporting
all possible ethertypes and can't test that.

>
> This patch removes this restriction, making it possible to receive any
> Ethertype as a payload, if the IFLA_GENEVE_INNER_PROTO_INHERIT flag is
> set.

This seems like an addition not a bugfix so personally seems like it should
be targeting net-next (which is currently closed afaik).

Eyal.

>
> This is especially useful if one wants to encapsulate MPLS, because with
> this patch the control-plane traffic (IP, LLC) and the data-plane
> traffic (MPLS) can be encapsulated without an Ethernet frame, making
> lightweight overlay networks a possibility.
>
> Changes in v2:
> - added a cover letter
> - lines no longer exceed 80 columns
>
>
> Josef Miegl (1):
> net: geneve: accept every ethertype
>
> drivers/net/geneve.c | 15 ++++-----------
> 1 file changed, 4 insertions(+), 11 deletions(-)
>
> --
> 2.37.1
>