From: Stephen Hemminger <stephen@networkplumber.org>
To: Jakub Kicinski <kubakici@wp.pl>
Cc: "Samudrala, Sridhar" <sridhar.samudrala@intel.com>,
"Michael S. Tsirkin" <mst@redhat.com>,
Siwei Liu <loseweigh@gmail.com>,
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>
Subject: Re: [virtio-dev] Re: [RFC PATCH net-next v2 2/2] virtio_net: Extend virtio to use VF datapath when available
Date: Sun, 28 Jan 2018 15:02:37 -0800 [thread overview]
Message-ID: <20180128150237.35237d84@xeon-e3> (raw)
In-Reply-To: <20180126183003.591cd5c5@cakuba.netronome.com>
On Fri, 26 Jan 2018 18:30:03 -0800
Jakub Kicinski <kubakici@wp.pl> wrote:
> On Fri, 26 Jan 2018 15:30:35 -0800, Samudrala, Sridhar wrote:
> > On 1/26/2018 2:47 PM, Jakub Kicinski wrote:
> > > On Sat, 27 Jan 2018 00:14:20 +0200, Michael S. Tsirkin wrote:
> > >> On Fri, Jan 26, 2018 at 01:46:42PM -0800, Siwei Liu wrote:
> > >>>> and the VM is not expected to do any tuning/optimizations on the VF driver
> > >>>> directly,
> > >>>> i think the current patch that follows the netvsc model of 2 netdevs(virtio
> > >>>> and vf) should
> > >>>> work fine.
> > >>> OK. For your use case that's fine. But that's too specific scenario
> > >>> with lots of restrictions IMHO, perhaps very few users will benefit
> > >>> from it, I'm not sure. If you're unwilling to move towards it, we'd
> > >>> take this one and come back with a generic solution that is able to
> > >>> address general use cases for VF/PT live migration .
> > >> I think that's a fine approach. Scratch your own itch! I imagine a very
> > >> generic virtio-switchdev providing host routing info to guests could
> > >> address lots of usecases. A driver could bind to that one and enslave
> > >> arbitrary other devices. Sounds reasonable.
> > >>
> > >> But given the fundamental idea of a failover was floated at least as
> > >> early as 2013, and made 0 progress since precisely because it kept
> > >> trying to address more and more features, and given netvsc is already
> > >> using the basic solution with some success, I'm not inclined to block
> > >> this specific effort waiting for the generic one.
> > > I think there is an agreement that the extra netdev will be useful for
> > > more advanced use cases, and is generally preferable. What is the
> > > argument for not doing that from the start? If it was made I must have
> > > missed it. Is it just unwillingness to write the extra 300 lines of
> > > code? Sounds like a pretty weak argument when adding kernel ABI is at
> > > stake...
> >
> > I am still not clear on the need for the extra netdev created by
> > virtio_net. The only advantage i can see is that the stats can be
> > broken between VF and virtio datapaths compared to the aggregrated
> > stats on virtio netdev as seen with the 2 netdev approach.
>
> Maybe you're not convinced but multiple arguments were made.
>
> > With 2 netdev model, any VM image that has a working network
> > configuration will transparently get VF based acceleration without
> > any changes.
>
> Nothing happens transparently. Things may happen automatically. The
> VF netdev doesn't disappear with netvsc. The PV netdev transforms into
> something it did not use to be. And configures and reports some
> information from the PV (e.g. speed) but PV doesn't pass traffic any
> longer.
>
> > 3 netdev model breaks this configuration starting with the creation
> > and naming of the 2 devices to udev needing to be aware of master and
> > slave virtio-net devices.
>
> I don't understand this comment. There is one virtio-net device and
> one "virtio-bond" netdev. And user space has to be aware of the special
> automatic arrangement anyway, because it can't touch the VF. It
> doesn't make any difference whether it ignores the VF or PV and VF.
> It simply can't touch the slaves, no matter how many there are.
>
> > Also, from a user experience point of view, loading a virtio-net with
> > BACKUP feature enabled will now show 2 virtio-net netdevs.
>
> One virtio-net and one virtio-bond, which represents what's happening.
>
> > For live migration with advanced usecases that Siwei is suggesting, i
> > think we need a new driver with a new device type that can track the
> > VF specific feature settings even when the VF driver is unloaded.
I see no added value of the 3 netdev model, there is no need for a bond
device.
next prev parent reply other threads:[~2018-01-28 23:02 UTC|newest]
Thread overview: 53+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-01-12 5:58 [RFC PATCH net-next v2 0/2] Enable virtio to act as a backup for a passthru device Sridhar Samudrala
2018-01-12 5:58 ` [RFC PATCH net-next v2 1/2] virtio_net: Introduce VIRTIO_NET_F_BACKUP feature bit Sridhar Samudrala
2018-01-17 18:15 ` Alexander Duyck
2018-01-17 19:02 ` [virtio-dev] " Michael S. Tsirkin
2018-01-17 19:25 ` Samudrala, Sridhar
2018-01-17 19:57 ` [virtio-dev] " Michael S. Tsirkin
2018-01-17 21:49 ` Alexander Duyck
2018-01-22 21:31 ` [virtio-dev] " Michael S. Tsirkin
2018-01-22 23:27 ` Samudrala, Sridhar
2018-01-23 0:02 ` Stephen Hemminger
2018-01-23 1:37 ` Samudrala, Sridhar
2018-01-23 0:05 ` Michael S. Tsirkin
2018-01-23 0:16 ` Jakub Kicinski
2018-01-23 0:47 ` Michael S. Tsirkin
2018-01-23 1:13 ` Jakub Kicinski
2018-01-23 1:23 ` Michael S. Tsirkin
2018-01-23 19:21 ` Jakub Kicinski
2018-01-23 1:34 ` Samudrala, Sridhar
2018-01-23 2:04 ` Michael S. Tsirkin
2018-01-23 3:36 ` [virtio-dev] " Alexander Duyck
2018-01-23 5:54 ` Samudrala, Sridhar
2018-01-23 23:01 ` Michael S. Tsirkin
2018-01-12 5:58 ` [RFC PATCH net-next v2 2/2] virtio_net: Extend virtio to use VF datapath when available Sridhar Samudrala
2018-01-22 20:27 ` Siwei Liu
2018-01-22 21:05 ` Samudrala, Sridhar
2018-01-23 19:53 ` Laine Stump
2018-01-22 21:41 ` Michael S. Tsirkin
2018-01-23 20:24 ` Siwei Liu
2018-01-23 22:58 ` Michael S. Tsirkin
2018-01-26 8:14 ` Siwei Liu
2018-01-26 16:51 ` Samudrala, Sridhar
2018-01-26 21:46 ` Siwei Liu
2018-01-26 22:14 ` [virtio-dev] " Michael S. Tsirkin
2018-01-26 22:47 ` Jakub Kicinski
2018-01-26 23:30 ` Samudrala, Sridhar
2018-01-27 2:30 ` Jakub Kicinski
2018-01-27 5:33 ` Samudrala, Sridhar
2018-01-27 5:58 ` Jakub Kicinski
2018-01-28 17:35 ` Alexander Duyck
2018-01-28 19:18 ` [virtio-dev] " Samudrala, Sridhar
2018-01-28 20:18 ` Alexander Duyck
2018-01-28 21:01 ` [virtio-dev] " Samudrala, Sridhar
2018-01-29 0:58 ` Alexander Duyck
2018-01-28 23:02 ` Stephen Hemminger [this message]
2018-01-29 4:26 ` Alexander Duyck
2018-01-29 18:24 ` Michael S. Tsirkin
2018-01-29 20:09 ` Alexander Duyck
2018-01-23 10:33 ` Jason Wang
2018-01-23 16:03 ` Samudrala, Sridhar
2018-01-29 3:32 ` Jason Wang
2018-01-26 16:58 ` Michael S. Tsirkin
2018-01-26 18:15 ` Samudrala, Sridhar
2018-01-12 5:58 ` [RFC PATCH 1/1] qemu: Introduce VIRTIO_NET_F_BACKUP feature bit to virtio_net Sridhar Samudrala
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=20180128150237.35237d84@xeon-e3 \
--to=stephen@networkplumber.org \
--cc=alexander.h.duyck@intel.com \
--cc=davem@davemloft.net \
--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=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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).