[ovirt-users] macvlan + IPv6
Dan Kenigsberg
danken at redhat.com
Thu Feb 25 11:09:30 UTC 2016
On Tue, Feb 23, 2016 at 03:13:21PM +0000, Jay Turner wrote:
> As a follow-up to this, I made some headway in sorting out the source of
> the issue, but hoping someone can give me a pointer to where this is
> happening in the code, as well as some understanding for why.
>
> In oVirt, when I allocate a virtual function to a guest, a new MAC address
> is generated for the VF (as it should be) from the MAC address pool in
> oVirt, and then that MAC address is written to the VF on the hypervisor.
> Thus I end up with something like:
>
> : ens11: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq master i40e
> state UP mode DEFAULT qlen 1000
> link/ether 3c:fd:fe:9d:a1:38 brd ff:ff:ff:ff:ff:ff
> vf 0 MAC 00:1a:4a:16:01:52, spoof checking on, link-state auto
>
> This *is not* how it happens under libvirt/virt-manager, however. When
> allocating a VF to a guest under libvirt, a random MAC address is generated
> and associated with the VF under the guest, but it is not written back to
> the hypervisor, and is instead left as 00:00:00:00:00:00.
>
> I am pretty sure this writing of the MAC address at the hypervisor is
> causing at least some of the issues I'm seeing, as with the Intel cards,
> that prevents the guest from changing/adding a new MAC address, which is
> what happens with the instantiation of a macvlan interface.
>
> So can anyone point me to where in the oVirt code this MAC address
> assignment is occurring?
https://gerrit.ovirt.org/gitweb?p=vdsm.git;a=blob;f=vdsm/virt/vmdevices/network.py;h=b2fa629c55ff728a964fda9d0ea598ef57676b53;hb=HEAD#l122
> Also curious why oVirt does this assignment, but
> libvirt does not.
When we start a VM, we want it to see its allocated mac address,
regardless of the specific VF that was assigned to it. It would surprise
me if virt-manager does not do that, hence I'd love to see the
<interface> elemet that it creates for the VF.
Regards,
Dan.
More information about the Users
mailing list