[ovs-dev] [PATCH 2/3] netdev-linux: make tap devices persistent.
Flavio Leitner
fbl at redhat.com
Wed Jun 7 14:57:34 UTC 2017
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: ovs-dev-bounces at openvswitch.org [mailto:ovs-dev-bounces at openvswitch.org] On Behalf Of Flavio Leitner
> Sent: Tuesday, May 30, 2017 1:10 AM
> To: dev at openvswitch.org
> Cc: Flavio Leitner <fbl at redhat.com>
> 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 <fbl at redhat.com>
> ---
> 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
> dev at openvswitch.org
> https://mail.openvswitch.org/mailman/listinfo/ovs-dev
--
Flavio
More information about the dev
mailing list