Jiri Pirko
2018-May-01 07:33 UTC
[PATCH net-next v9 3/4] virtio_net: Extend virtio to use VF datapath when available
Mon, Apr 30, 2018 at 09:26:34PM CEST, sridhar.samudrala at intel.com wrote:>On 4/30/2018 12:12 AM, Jiri Pirko wrote: >> Mon, Apr 30, 2018 at 05:00:33AM CEST, sridhar.samudrala at intel.com wrote: >> > On 4/28/2018 1:24 AM, Jiri Pirko wrote: >> > > Fri, Apr 27, 2018 at 07:06:59PM CEST, sridhar.samudrala at 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 >> > > Why? Both datapaths could be enabled at a time. Why the loop on >> > > hypervisor side would be a problem. This in not an issue for >> > > bonding/team as well. >> > Somehow the hypervisor needs to make sure that the broadcasts/multicasts from the VM >> > sent over the VF datapath don't get looped back to the VM via the virtio-net datapth. >> Why? Please see below. >> >> >> > This can happen if both datapaths are enabled at the same time. >> > >> > I would think this is an issue even with bonding/team as well when virtio-net and >> > VF are backed by the same PF. >> > >> > >> I believe that the scenario is the same as on an ordinary nic/swich >> network: >> >> ................... >> >> host >> bond0 >> / \ >> eth0 eth1 >> | | >> ................... >> | | >> p1 p2 >> >> switch >> >> ................... >> >> It is perfectly valid to p1 and p2 be up and "bridged" together. Bond >> has to cope with loop-backed frames. "Failover driver" should too, >> it's the same scenario. > >OK. So looks like we should be able to handle this by returning RX_HANDLER_EXACT >for frames received on standby device when primary is present.Yep.
Apparently Analagous Threads
- [RFC PATCH net-next v5 3/4] virtio_net: Extend virtio to use VF datapath when available
- [RFC PATCH net-next v5 3/4] virtio_net: Extend virtio to use VF datapath when available
- [RFC PATCH net-next v5 3/4] virtio_net: Extend virtio to use VF datapath when available
- [RFC PATCH net-next v5 3/4] virtio_net: Extend virtio to use VF datapath when available
- [virtio-dev] Re: [RFC PATCH net-next v2 2/2] virtio_net: Extend virtio to use VF datapath when available