Mike Pattrick via dev <[email protected]> writes:
> Previously OVS created shared datapath ports for tunnels
> (like genev_sys_6081, gre_sys, vxlan_sys_4789) shared between all
> tunnels with the same destination port. In the kernel datapath this
> is needed. But in the userspace datapath this prevents the datapath from
> differentiating between tunnels while executing actions.
>
> This patch changes the implementation so each tunnel interface directly
> as its own datapath port in userspace.
>
> Signed-off-by: Mike Pattrick <[email protected]>
> ---
...
> diff --git a/ofproto/ofproto-dpif.c b/ofproto/ofproto-dpif.c
> index 4a200dd08..b62ad5842 100644
> --- a/ofproto/ofproto-dpif.c
> +++ b/ofproto/ofproto-dpif.c
> @@ -4141,6 +4141,9 @@ port_add(struct ofproto *ofproto_, struct netdev
> *netdev)
> sset_add(&ofproto->ghost_ports, netdev_get_name(netdev));
> return 0;
> }
> + struct dpif *dpif = ofproto->backer->dpif;
> + const char *dpif_type_str = dpif_normalize_type(dpif_type(dpif));
> + netdev_set_dpif_type(netdev, dpif_type_str);
>
> dp_port_name = netdev_vport_get_dpif_port(netdev, namebuf, sizeof
> namebuf);
> if (!dpif_port_exists(ofproto->backer->dpif, dp_port_name)) {
> @@ -4156,9 +4159,6 @@ port_add(struct ofproto *ofproto_, struct netdev
> *netdev)
> dp_port_name, odp_to_u32(port_no));
> }
> } else {
> - struct dpif *dpif = ofproto->backer->dpif;
> - const char *dpif_type_str = dpif_normalize_type(dpif_type(dpif));
> - netdev_set_dpif_type(netdev, dpif_type_str);
> }
I didn't take too much depth to look at this, but this change seems
strange to me. Is it really intended to look like this?
_______________________________________________
dev mailing list
[email protected]
https://mail.openvswitch.org/mailman/listinfo/ovs-dev