Hi Samudrala, On 2019/1/9 上午8:18, Samudrala, Sridhar wrote: > On 1/8/2019 4:14 PM, Dongli Zhang wrote: >> Hi Venu, >> >> On 2019/1/9 上午1:25, Venu Busireddy wrote: >>> On 2019-01-09 00:56:38 +0800, Dongli Zhang wrote: >>>> I am not familiar with libvirt and I would like to play with this only >>>> with qemu. >>>> >>>> With failover, we need to hotplug the VF on destination server to VM after >>>> live >>>> migration. However, the VF on destination server would have different mac >>>> address. >>>> >>>> How can we specify the mac for the new VF to hotplug via qemu, as VF is >>>> only a >>>> vfio pci device? >>> How is the VF device on the destination host any different from the VF >>> on the source host? >>> >>> As you do on the source host, you first assign the MAC address of >>> 00:00:00:00:00:00 to the VF. After the migration, you assign the same >>> MAC address as that of the virtio_net device to the VF, and hotadd the VF >> This was what I was wondering. >> >> How the mac address is configured for VF (or any NIC like PF) after it is >> assigned to vfio? > > ip link set <pf> vf <vf-num> mac <MAC> > > See https://www.kernel.org/doc/html/latest/networking/net_failover.html > for a sample script that shows the steps to initiate live migration with VF > and virtio-net in standby mode.
Thank you very much for the help! Sorry that I did not ask the question in the right way. Although I was talking about VF, I would like to passthrough the entire PF (with sriov_numvfs=0) to guest VM. In this situation, I am not able to configure the mac address when the entire PF (or NIC) is assigned to VFIO. <pf> does not exist as it is belong to VFIO. Thank you very much! Dongli Zhang > > >> Thank you very much! >> >> Dongli Zhang >> >> >>> device to the VM. And then, after you receive the FAILOVER_PRIMARY_CHANGED >>> event, set the macvtap device to down state. >>> >>> Venu >>> >>>> I am trying to play with this with only qemu (w/o libvirt). >>>> >>>> Thank you very much! >>>> >>>> Dongli Zhang >>>> >>>> On 01/08/2019 06:29 AM, Venu Busireddy wrote: >>>>> From: Sridhar Samudrala <sridhar.samudr...@intel.com> >>>>> >>>>> This feature bit can be used by a hypervisor to indicate to the virtio_net >>>>> device that it can act as a standby for another device with the same MAC >>>>> address. >>>>> >>>>> Signed-off-by: Sridhar Samudrala <sridhar.samudr...@intel.com> >>>>> Signed-off-by: Venu Busireddy <venu.busire...@oracle.com> >>>>> --- >>>>> hw/net/virtio-net.c | 2 ++ >>>>> 1 file changed, 2 insertions(+) >>>>> >>>>> diff --git a/hw/net/virtio-net.c b/hw/net/virtio-net.c >>>>> index 385b1a0..411f8fb 100644 >>>>> --- a/hw/net/virtio-net.c >>>>> +++ b/hw/net/virtio-net.c >>>>> @@ -2198,6 +2198,8 @@ static Property virtio_net_properties[] = { >>>>> true), >>>>> DEFINE_PROP_INT32("speed", VirtIONet, net_conf.speed, SPEED_UNKNOWN), >>>>> DEFINE_PROP_STRING("duplex", VirtIONet, net_conf.duplex_str), >>>>> + DEFINE_PROP_BIT64("standby", VirtIONet, host_features, >>>>> VIRTIO_NET_F_STANDBY, >>>>> + false), >>>>> DEFINE_PROP_END_OF_LIST(), >>>>> }; >>>>> >>>>>