[ovs-dev] [RFC] Revert "netdev: do not allow devices to be opened with conflicting types"

Daniele Di Proietto diproiettod at ovn.org
Sun Aug 14 19:52:02 UTC 2016


Thanks for following up on this.

I think we should apply this to master, as restart is broken if an internal
interface has an IP address.

Could you provide a signoff for the patch, please?

Thanks,

Daniele

2016-08-01 13:14 GMT-07:00 Thadeu Lima de Souza Cascardo <
cascardo at redhat.com>:

> This reverts commit d2fa6c676a13e86acc7f17261b2d87484f625d45.
>
> When doing a restart, the routing table will open ports as system, which
> prevents internal ports to be opened with the right type. That causes
> failures
> in creating the ports.
>
> I am sending this as an RFC, as I will try to fix it on the routing table
> layer
> before 2.6 branches. If I can't find a proper fix by then, we should
> probably
> revert it and try it again later.
> ---
>  lib/netdev.c | 8 +-------
>  1 file changed, 1 insertion(+), 7 deletions(-)
>
> diff --git a/lib/netdev.c b/lib/netdev.c
> index 75bf1cb..d5237bd 100644
> --- a/lib/netdev.c
> +++ b/lib/netdev.c
> @@ -339,8 +339,7 @@ netdev_open(const char *name, const char *type, struct
> netdev **netdevp)
>      if (!netdev) {
>          struct netdev_registered_class *rc;
>
> -        type = type && type[0] ? type : "system";
> -        rc = netdev_lookup_class(type);
> +        rc = netdev_lookup_class(type && type[0] ? type : "system");
>          if (rc && ovs_refcount_try_ref_rcu(&rc->refcnt)) {
>              netdev = rc->class->alloc();
>              if (netdev) {
> @@ -377,11 +376,6 @@ netdev_open(const char *name, const char *type,
> struct netdev **netdevp)
>                        name, type);
>              error = EAFNOSUPPORT;
>          }
> -    } else if (type && strcmp(type, netdev_get_type(netdev))) {
> -        VLOG_WARN("trying to create netdev %s of different type %s,"
> -                  " already is %s\n",
> -                  name, type, netdev_get_type(netdev));
> -        error = EEXIST;
>      } else {
>          error = 0;
>      }
> --
> 2.7.4
>
> _______________________________________________
> dev mailing list
> dev at openvswitch.org
> http://openvswitch.org/mailman/listinfo/dev
>



More information about the dev mailing list