Thread (1 message) 1 message, 1 author, 2017-12-05

Re: [RFC] virtio-net: help live migrate SR-IOV devices

From: "Michael S. Tsirkin" <mst@redhat.com>
Date: 2017-12-05 22:05:22

On Tue, Dec 05, 2017 at 01:52:26PM -0800, Jesse Brandeburg wrote:
On Tue, 5 Dec 2017 21:20:07 +0200
"Michael S. Tsirkin" [off-list ref] wrote:
quoted
On Tue, Dec 05, 2017 at 11:59:17AM +0200, achiad shochat wrote:
quoted
Then we'll have a single solution for both netvsc and virtio (and any
other PV device).
And we could handle the VF DMA dirt issue agnostically.  
For the record, I won't block patches adding this kist to virtio
on the basis that they must be generic. It's not a lot
of code, implementation can come first, prettify later.
Thanks, based on this discussion we're going to work on improving
virtio-net first, but some of Achiad's points are good.  I don't believe
it should block the virtio work however.

In particular I'm really interested in figuring out how we can get to
the point that virtio is able to make or implement some smart decisions
about which NIC to pick for traffic delivery (it's own paravirt path or
the passthorugh device path), if Achiad wants to develop the idea into
some code, I'd be interested to review it.
quoted
But we do need to have a discussion about how devices are paired.
I am not sure using just MAC works. E.g. some passthrough
devices don't give host ability to set the MAC.
Are these worth worrying about?
I personally don't think that will be much of a problem, if a
certain device has that issue, can't we just have the virtio-net device
pick up the MAC address of the passthrough device?
Then what do you do after you have migrated to another box?
The PT device there likely has a different MAC.
As long as they match
things should work OK. It at least is an initial way to do the
configuration that has at least some traction as workable, as proved by
the Microsoft design.
Yes - that design just implements what people have been doing for years
using bond so of course it's workable.
FWIW, the Intel SR-IOV devices all accept a hypervisor/host provided
MAC address.
For VFs you often can program the MAC through the PF, but you typically
can't do this for PFs. Or as another example consider nested virt with a
VF passed through.  PF isn't there within L1 guest so can't be used to
program the mac of the VF.

Still, we can always start small and require same mac, add other ways
to address issues later as we come up with them.

-- 
MST
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help