All of lore.kernel.org
 help / color / mirror / Atom feed
From: Jiri Pirko <jiri@resnulli.us>
To: Siwei Liu <loseweigh@gmail.com>
Cc: Sridhar Samudrala <sridhar.samudrala@intel.com>,
	"Michael S. Tsirkin" <mst@redhat.com>,
	Stephen Hemminger <stephen@networkplumber.org>,
	David Miller <davem@davemloft.net>,
	Netdev <netdev@vger.kernel.org>,
	virtualization@lists.linux-foundation.org,
	virtio-dev@lists.oasis-open.org, "Brandeburg,
	Jesse" <jesse.brandeburg@intel.com>,
	Alexander Duyck <alexander.h.duyck@intel.com>,
	Jakub Kicinski <kubakici@wp.pl>, Jason Wang <jasowang@redhat.com>,
	aaron.f.brown@intel.com
Subject: Re: [PATCH net-next v9 3/4] virtio_net: Extend virtio to use VF datapath when available
Date: Sun, 29 Apr 2018 15:45:02 +0200	[thread overview]
Message-ID: <20180429134502.GA23854@nanopsycho.orion> (raw)
In-Reply-To: <CADGSJ23A4w=MmnP7CneBwk=eouS07HfK4=1UWTk3Dz3gBX0yjg@mail.gmail.com>

Sun, Apr 29, 2018 at 10:56:30AM CEST, loseweigh@gmail.com wrote:
>On Sat, Apr 28, 2018 at 2:42 AM, Jiri Pirko <jiri@resnulli.us> wrote:
>> Fri, Apr 27, 2018 at 07:06:59PM CEST, sridhar.samudrala@intel.com wrote:
>>>This patch enables virtio_net to switch over to a VF datapath when a VF
>>>netdev is present with the same MAC address. It allows live migration
>>>of a VM with a direct attached VF without the need to setup a bond/team
>>>between a VF and virtio net device in the guest.
>>>
>>>The hypervisor needs to enable only one datapath at any time so that
>>>packets don't get looped back to the VM over the other datapath. When a VF
>>>is plugged, the virtio datapath link state can be marked as down. The
>>>hypervisor needs to unplug the VF device from the guest on the source host
>>>and reset the MAC filter of the VF to initiate failover of datapath to
>>>virtio before starting the migration. After the migration is completed,
>>>the destination hypervisor sets the MAC filter on the VF and plugs it back
>>>to the guest to switch over to VF datapath.
>>>
>>>It uses the generic failover framework that provides 2 functions to create
>>>and destroy a master failover netdev. When STANDBY feature is enabled, an
>>>additional netdev(failover netdev) is created that acts as a master device
>>>and tracks the state of the 2 lower netdevs. The original virtio_net netdev
>>>is marked as 'standby' netdev and a passthru device with the same MAC is
>>>registered as 'primary' netdev.
>>>
>>>This patch is based on the discussion initiated by Jesse on this thread.
>>>https://marc.info/?l=linux-virtualization&m=151189725224231&w=2
>>>
>>
>> When I enabled the standby feature (hardcoded), I have 2 netdevices now:
>> 4: ens3: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default qlen 1000
>>     link/ether 52:54:00:b2:a7:f1 brd ff:ff:ff:ff:ff:ff
>>     inet6 fe80::5054:ff:feb2:a7f1/64 scope link
>>        valid_lft forever preferred_lft forever
>> 5: ens3n_sby: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
>>     link/ether 52:54:00:b2:a7:f1 brd ff:ff:ff:ff:ff:ff
>>     inet6 fe80::5054:ff:feb2:a7f1/64 scope link
>>        valid_lft forever preferred_lft forever
>>
>> However, it seems to confuse my initscripts on Fedora:
>> [root@test1 ~]# ifup ens3
>> ./network-functions: line 78: [: /etc/dhcp/dhclient-ens3: binary operator expected
>> ./network-functions: line 80: [: /etc/dhclient-ens3: binary operator expected
>> ./network-functions: line 69: [: /var/lib/dhclient/dhclient-ens3: binary operator expected
>>
>You should teach Fedora and all cloud vendors to upgrade their
>initscripts and other userspace tools, no?

I just wanted to point out that the conversion from "nostandby" to
"standby" isn't always that smooth as claimed. The claim was "no change
for the current user" iirc.

  reply	other threads:[~2018-04-29 13:45 UTC|newest]

Thread overview: 92+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-04-27 17:06 [PATCH net-next v9 0/4] Enable virtio_net to act as a standby for a passthru device Sridhar Samudrala
2018-04-27 17:06 ` [virtio-dev] " Sridhar Samudrala
2018-04-27 17:06 ` [PATCH net-next v9 1/4] virtio_net: Introduce VIRTIO_NET_F_STANDBY feature bit Sridhar Samudrala
2018-04-27 17:06   ` [virtio-dev] " Sridhar Samudrala
2018-04-28  7:50   ` Jiri Pirko
2018-04-28  7:50   ` Jiri Pirko
2018-04-30  2:47     ` Samudrala, Sridhar
2018-04-30  2:47       ` [virtio-dev] " Samudrala, Sridhar
2018-04-30  7:03       ` Jiri Pirko
2018-04-30 19:14         ` Samudrala, Sridhar
2018-04-30 19:14         ` Samudrala, Sridhar
2018-04-30 19:14           ` [virtio-dev] " Samudrala, Sridhar
2018-04-30  2:47     ` Samudrala, Sridhar
2018-04-27 17:06 ` Sridhar Samudrala
2018-04-27 17:06 ` [PATCH net-next v9 2/4] net: Introduce generic failover module Sridhar Samudrala
2018-04-27 17:06 ` Sridhar Samudrala
2018-04-27 17:06   ` [virtio-dev] " Sridhar Samudrala
2018-04-27 17:53   ` Jiri Pirko
2018-04-27 17:53   ` Jiri Pirko
2018-04-28  8:15   ` Jiri Pirko
2018-04-30  2:47     ` Samudrala, Sridhar
2018-04-30  2:47       ` [virtio-dev] " Samudrala, Sridhar
2018-04-30  2:47     ` Samudrala, Sridhar
2018-04-28  8:15   ` Jiri Pirko
2018-04-28  9:06   ` Jiri Pirko
2018-04-30  3:03     ` Samudrala, Sridhar
2018-04-30  3:03       ` [virtio-dev] " Samudrala, Sridhar
2018-04-30  3:03     ` Samudrala, Sridhar
2018-05-02 16:15     ` Jiri Pirko
2018-05-02 17:51       ` Samudrala, Sridhar
2018-05-02 17:51       ` Samudrala, Sridhar
2018-05-02 17:51         ` [virtio-dev] " Samudrala, Sridhar
2018-05-02 20:30         ` Michael S. Tsirkin
2018-05-02 20:30         ` Michael S. Tsirkin
2018-05-02 20:30           ` [virtio-dev] " Michael S. Tsirkin
2018-05-02 21:36           ` Samudrala, Sridhar
2018-05-02 21:36             ` [virtio-dev] " Samudrala, Sridhar
2018-05-02 21:39         ` Jiri Pirko
2018-05-02 21:39         ` Jiri Pirko
2018-05-02 21:39         ` Jiri Pirko
2018-05-02 21:39         ` Jiri Pirko
2018-05-02 16:15     ` Jiri Pirko
2018-04-27 17:06 ` [PATCH net-next v9 3/4] virtio_net: Extend virtio to use VF datapath when available Sridhar Samudrala
2018-04-27 17:06 ` Sridhar Samudrala
2018-04-27 17:06   ` [virtio-dev] " Sridhar Samudrala
2018-04-28  8:24   ` Jiri Pirko
2018-04-30  3:00     ` Samudrala, Sridhar
2018-04-30  3:00       ` [virtio-dev] " Samudrala, Sridhar
2018-04-30  7:12       ` Jiri Pirko
2018-04-30  7:12       ` Jiri Pirko
2018-04-30 19:26         ` Samudrala, Sridhar
2018-04-30 19:26           ` [virtio-dev] " Samudrala, Sridhar
2018-05-01  7:33           ` Jiri Pirko
2018-05-01  7:33           ` Jiri Pirko
2018-04-30 19:26         ` Samudrala, Sridhar
2018-04-30  3:00     ` Samudrala, Sridhar
2018-04-28  9:42   ` Jiri Pirko
2018-04-28  9:42   ` Jiri Pirko
2018-04-29  8:56     ` Siwei Liu
2018-04-29  8:56     ` Siwei Liu
2018-04-29  8:56       ` [virtio-dev] " Siwei Liu
2018-04-29 13:45       ` Jiri Pirko [this message]
2018-04-29 13:45       ` Jiri Pirko
2018-04-30  4:16     ` Samudrala, Sridhar
2018-04-30  4:16     ` Samudrala, Sridhar
2018-04-30  4:16       ` [virtio-dev] " Samudrala, Sridhar
2018-04-30  7:20       ` Jiri Pirko
2018-05-02  0:20         ` Samudrala, Sridhar
2018-05-02  0:20         ` Samudrala, Sridhar
2018-05-02  0:20           ` [virtio-dev] " Samudrala, Sridhar
2018-05-02  7:50           ` Jiri Pirko
2018-05-02  7:50           ` Jiri Pirko
2018-05-02 15:34             ` Samudrala, Sridhar
2018-05-02 15:34             ` Samudrala, Sridhar
2018-05-02 15:34               ` [virtio-dev] " Samudrala, Sridhar
2018-05-02 16:05               ` Jiri Pirko
2018-05-02 15:47             ` Michael S. Tsirkin
2018-05-02 15:47               ` [virtio-dev] " Michael S. Tsirkin
2018-05-02 16:04               ` Jiri Pirko
2018-05-02 16:04               ` Jiri Pirko
2018-05-02 15:47             ` Michael S. Tsirkin
2018-04-30  7:20       ` Jiri Pirko
2018-04-27 17:07 ` [PATCH net-next v9 4/4] netvsc: refactor notifier/event handling code to use the failover framework Sridhar Samudrala
2018-04-27 17:07 ` Sridhar Samudrala
2018-04-27 17:07   ` [virtio-dev] " Sridhar Samudrala
2018-04-27 17:45 ` [PATCH net-next v9 0/4] Enable virtio_net to act as a standby for a passthru device Jiri Pirko
2018-04-27 17:45 ` Jiri Pirko
2018-04-27 17:53   ` Samudrala, Sridhar
2018-04-27 17:53   ` Samudrala, Sridhar
2018-04-27 17:53     ` [virtio-dev] " Samudrala, Sridhar
2018-04-27 19:38     ` Jiri Pirko
2018-04-27 19:38     ` Jiri Pirko

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20180429134502.GA23854@nanopsycho.orion \
    --to=jiri@resnulli.us \
    --cc=aaron.f.brown@intel.com \
    --cc=alexander.h.duyck@intel.com \
    --cc=davem@davemloft.net \
    --cc=jasowang@redhat.com \
    --cc=jesse.brandeburg@intel.com \
    --cc=kubakici@wp.pl \
    --cc=loseweigh@gmail.com \
    --cc=mst@redhat.com \
    --cc=netdev@vger.kernel.org \
    --cc=sridhar.samudrala@intel.com \
    --cc=stephen@networkplumber.org \
    --cc=virtio-dev@lists.oasis-open.org \
    --cc=virtualization@lists.linux-foundation.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.