diff mbox series

[ovs-dev,OVS,1/1] dpif: geneve: supply dpif function to get ifindex

Message ID 1516099596-9804-1-git-send-email-john.hurley@netronome.com
State Accepted
Headers show
Series [ovs-dev,OVS,1/1] dpif: geneve: supply dpif function to get ifindex | expand

Commit Message

John Hurley Jan. 16, 2018, 10:46 a.m. UTC
Geneve tunnels are not given a netdev_class function to determine their
ifindex. This means when ofproto-dpif attempts to add a geneve netdev
it fails in 'netdev_ports_insert' in netdev.c. Failure to add this means
that further operations like offloading a rule that egresses to a geneve
port will be rejected as the egress port cannot be found. This patch
applies the same ifindex function to geneve as is used in vxlan.

Signed-off-by: John Hurley <john.hurley@netronome.com>
Acked-by: Simon Horman <simon.horman@netronome.com>
---
 lib/netdev-vport.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

Comments

Simon Horman Jan. 22, 2018, 9:47 a.m. UTC | #1
On 16 January 2018 at 11:46, John Hurley <john.hurley@netronome.com> wrote:
>
> Geneve tunnels are not given a netdev_class function to determine their
> ifindex. This means when ofproto-dpif attempts to add a geneve netdev
> it fails in 'netdev_ports_insert' in netdev.c. Failure to add this means
> that further operations like offloading a rule that egresses to a geneve
> port will be rejected as the egress port cannot be found. This patch
> applies the same ifindex function to geneve as is used in vxlan.
>
> Signed-off-by: John Hurley <john.hurley@netronome.com>
> Acked-by: Simon Horman <simon.horman@netronome.com>

Thanks John,

I have applied this to master, branch-2.9 and branch-2.8.
diff mbox series

Patch

diff --git a/lib/netdev-vport.c b/lib/netdev-vport.c
index d11c5cc..89c8bde 100644
--- a/lib/netdev-vport.c
+++ b/lib/netdev-vport.c
@@ -966,7 +966,7 @@  netdev_vport_tunnel_register(void)
         TUNNEL_CLASS("geneve", "genev_sys", netdev_geneve_build_header,
                                             netdev_tnl_push_udp_header,
                                             netdev_geneve_pop_header,
-                                            NULL),
+                                            NETDEV_VPORT_GET_IFINDEX),
         TUNNEL_CLASS("gre", "gre_sys", netdev_gre_build_header,
                                        netdev_gre_push_header,
                                        netdev_gre_pop_header,