On Mon, Sep 8, 2014 at 9:08 PM, Mark Maglana <[email protected]> wrote:
> Modify patch port name separators to use "--" instead of "-" so that
> ovs-vtep plays nice with external tools such as Mininet which uses
> dashes in port names. Without this change, ovs-vtep will throw a
> ValueError exception and die soon after one of the physical ports
> created by Mininet is attached to a logical switch.
>
> Signed-off-by: Mark Maglana <[email protected]>
I see that there is a bug. With your patch, would we still hit the bug
if the port name has a "--" in it?
> ---
> vtep/ovs-vtep | 18 +++++++++---------
> 1 file changed, 9 insertions(+), 9 deletions(-)
>
> diff --git a/vtep/ovs-vtep b/vtep/ovs-vtep
> index 721063b..bcd8b06 100755
> --- a/vtep/ovs-vtep
> +++ b/vtep/ovs-vtep
> @@ -286,9 +286,9 @@ class Logical_Switch(object):
> # Go through all the logical switch's interfaces that end with "-l"
> # and copy the statistics to logical_binding_stats.
> for interface in self.ports.iterkeys():
> - if not interface.endswith("-l"):
> + if not interface.endswith("--l"):
> continue
> - vlan, pp_name, logical = interface.split("-")
> + vlan, pp_name, logical = interface.split("--")
> uuid = vtep_ctl("get physical_port %s vlan_stats:%s"
> % (pp_name, vlan))
> if not uuid:
> @@ -308,9 +308,9 @@ class Logical_Switch(object):
> def add_binding(ps_name, binding, ls):
> vlog.info("adding binding %s" % binding)
>
> - vlan, pp_name = binding.split("-")
> - pbinding = binding+"-p"
> - lbinding = binding+"-l"
> + vlan, pp_name = binding.split("--")
> + pbinding = binding+"--p"
> + lbinding = binding+"--l"
>
> # Create a patch port that connects the VLAN+port to the lswitch.
> # Do them as two separate calls so if one side already exists, the
> @@ -349,9 +349,9 @@ def add_binding(ps_name, binding, ls):
> def del_binding(ps_name, binding, ls):
> vlog.info("removing binding %s" % binding)
>
> - vlan, pp_name = binding.split("-")
> - pbinding = binding+"-p"
> - lbinding = binding+"-l"
> + vlan, pp_name = binding.split("--")
> + pbinding = binding+"--p"
> + lbinding = binding+"--l"
>
> port_no = ovs_vsctl("get Interface %s ofport" % pp_name)
> patch_no = ovs_vsctl("get Interface %s ofport" % pbinding)
> @@ -400,7 +400,7 @@ def handle_physical(ps_name):
> if ls_name not in Lswitches:
> Lswitches[ls_name] = Logical_Switch(ls_name)
>
> - binding = "%s-%s" % (vlan, pp_name)
> + binding = "%s--%s" % (vlan, pp_name)
> ls = Lswitches[ls_name]
> new_bindings.add(binding)
>
> --
> 2.0.3
>
> _______________________________________________
> dev mailing list
> [email protected]
> http://openvswitch.org/mailman/listinfo/dev
_______________________________________________
dev mailing list
[email protected]
http://openvswitch.org/mailman/listinfo/dev