[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20180122161623.22b6e151@cakuba.netronome.com>
Date: Mon, 22 Jan 2018 16:16:23 -0800
From: Jakub Kicinski <kubakici@...pl>
To: "Michael S. Tsirkin" <mst@...hat.com>
Cc: "Samudrala, Sridhar" <sridhar.samudrala@...el.com>,
Alexander Duyck <alexander.duyck@...il.com>,
Stephen Hemminger <stephen@...workplumber.org>,
David Miller <davem@...emloft.net>,
Netdev <netdev@...r.kernel.org>,
virtualization@...ts.linux-foundation.org,
virtio-dev@...ts.oasis-open.org,
"Brandeburg, Jesse" <jesse.brandeburg@...el.com>,
"Duyck, Alexander H" <alexander.h.duyck@...el.com>,
achiad shochat <achiad.mellanox@...il.com>,
Achiad Shochat <achiad@...lanox.com>
Subject: Re: [virtio-dev] [RFC PATCH net-next v2 1/2] virtio_net: Introduce
VIRTIO_NET_F_BACKUP feature bit
On Tue, 23 Jan 2018 02:05:48 +0200, Michael S. Tsirkin wrote:
> > As we are using virtio_net to control and manage the VF data path, it is not
> > clear to me
> > what is the advantage of creating a new device rather than extending
> > virtio_net to manage
> > the VF datapath via transparent bond mechanism.
>
> So that XDP redirect actions can differentiate between virtio, PT
> device and the bond. Without it there's no way to redirect
> to virtio specifically.
Let's make a list :P
separate netdev:
1. virtio device being a bond master is confusing/unexpected.
2. virtio device being both a master and a slave is confusing.
3. configuration of a master may have different semantics than
configuration of a slave.
4. two para-virt devices may create a loop (or rather will be bound
to each other indeterministically, depending on which spawns first).
5. there is no user configuration AFAIR in existing patch, VM admin
won't be able to prevent the bond. Separate netdev we can make
removable even if it's spawned automatically.
6. XDP redirect use-case (or any explicit use of the virtio slave)
(from MST)
independent driver:
7. code reuse.
separate device:
8. bond any netdev with any netdev.
9. reuse well-known device driver model.
a. natural anchor for hypervisor configuration (switchdev etc.)
b. next-gen silicon may be able to disguise as virtio device, and the
loop check in virtio driver will prevent the legitimate bond it such
case. AFAIU that's one of the goals of next-gen virtio spec as well.
Powered by blists - more mailing lists