Hi Flavio,

I am facing some issue with ovs-master on Ubuntu 14.04 system. Here are the 
steps I followed and the error message I get. Can it be possibly related to 
your patch for making tap device persistent ? Let me know if I am missing some 
steps here.

1. Create netdev bridge
$ ovs-vsctl add-br br0 -- set Bridge br0 datapath_type=netdev
$ ovs-vsctl show
4c516433-c305-4894-96ad-f44af0b01b63
    Bridge "br0"
        Port "br0"
            Interface "br0"
                type: internal
    ovs_version: "2.7.90"

2. Bring up br0 interface
$ ifconfig br0 up

3. Restart the openvswitch
$ service openvswitch-switch restart

4. Show ovs db
$ ovs-vsctl show
4c516433-c305-4894-96ad-f44af0b01b63
    Bridge "br0"
        Port "br0"
            Interface "br0"
                type: internal
                error: "could not open network device br0 (File exists)"
    ovs_version: "2.7.90"

Regards,
Vishal

-----Original Message-----
From: Flavio Leitner [mailto:[email protected]] 
Sent: Wednesday, June 07, 2017 8:28 PM
To: Vishal Deep Ajmera <[email protected]>
Cc: [email protected]
Subject: Re: [ovs-dev] [PATCH 2/3] netdev-linux: make tap devices persistent.

On Wed, Jun 07, 2017 at 09:39:16AM +0000, Vishal Deep Ajmera wrote:
> Hi Flavio,
> 
> If the tap-device is persistent but the 'netdev' datapath is not yet 
> started then will it create any issues in the system ? What happens if 
> we start sending packets on this interface whereas data-path is not 
> present ?

The link goes down and packets are dropped.
fbl

> 
> Regards,
> Vishal
> 
> -----Original Message-----
> From: [email protected] 
> [mailto:[email protected]] On Behalf Of Flavio Leitner
> Sent: Tuesday, May 30, 2017 1:10 AM
> To: [email protected]
> Cc: Flavio Leitner <[email protected]>
> Subject: [ovs-dev] [PATCH 2/3] netdev-linux: make tap devices persistent.
> 
> When using data path type "netdev", bridge port is a tun device and when OVS 
> restarts, that device and its network configuration is lost.
> 
> This patch enables the tap device to persist instead.
> 
> Signed-off-by: Flavio Leitner <[email protected]>
> ---
>  lib/netdev-linux.c | 8 ++++++++
>  1 file changed, 8 insertions(+)
> 
> diff --git a/lib/netdev-linux.c b/lib/netdev-linux.c index 
> 3ad3d45..d181e4f 100644
> --- a/lib/netdev-linux.c
> +++ b/lib/netdev-linux.c
> @@ -866,6 +866,13 @@ netdev_linux_construct_tap(struct netdev *netdev_)
>          goto error_close;
>      }
>  
> +    if (ioctl(netdev->tap_fd, TUNSETPERSIST, 1)) {
> +        VLOG_WARN("%s: creating tap device failed (persist): %s", name,
> +                  ovs_strerror(errno));
> +        error = errno;
> +        goto error_close;
> +    }
> +
>      return 0;
>  
>  error_close:
> @@ -885,6 +892,7 @@ netdev_linux_destruct(struct netdev *netdev_)
>      if (netdev_get_class(netdev_) == &netdev_tap_class
>          && netdev->tap_fd >= 0)
>      {
> +        ioctl(netdev->tap_fd, TUNSETPERSIST, 0);
>          close(netdev->tap_fd);
>      }
>  
> --
> 2.9.4
> 
> _______________________________________________
> dev mailing list
> [email protected]
> https://mail.openvswitch.org/mailman/listinfo/ovs-dev

--
Flavio
_______________________________________________
dev mailing list
[email protected]
https://mail.openvswitch.org/mailman/listinfo/ovs-dev

Reply via email to