Under virt-manager, the vf inside macvlan-test-2 does get a different MAC address with each boot.  However that MAC address does not appear back on the host.  In fact no MAC addresses appear on the VFs themselves (which is a difference in behavior as compared to oVirt):

5: ens4: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP mode DEFAULT qlen 1000
    link/ether e4:1d:2d:fd:8b:9a brd ff:ff:ff:ff:ff:ff
    vf 0 MAC 00:00:00:00:00:00, spoof checking off, link-state auto
    vf 1 MAC 00:00:00:00:00:00, spoof checking off, link-state auto
    vf 2 MAC 00:00:00:00:00:00, spoof checking off, link-state auto
    vf 3 MAC 00:00:00:00:00:00, spoof checking off, link-state auto
    vf 4 MAC 00:00:00:00:00:00, spoof checking off, link-state auto
    vf 5 MAC 00:00:00:00:00:00, spoof checking off, link-state auto
    vf 6 MAC 00:00:00:00:00:00, spoof checking off, link-state auto
    vf 7 MAC 00:00:00:00:00:00, spoof checking off, link-state auto

- jkt


On Sun, Feb 28, 2016 at 12:13 AM Dan Kenigsberg <danken@redhat.com> wrote:
On Thu, Feb 25, 2016 at 06:28:30PM +0000, Jay Turner wrote:
> Attached.
>
> macvlan-1.xml is from oVirt (and includes the VF MAC address)
> macvlan-test-2.xml is from virt-manager (and does not include the VF MAC
> address)


> <domain type='kvm' id='2'>
...
>     <interface type='bridge'>
>       <mac address='00:1a:4a:16:01:51'/>
>       <source bridge='ovirtmgmt'/>
>       <target dev='vnet0'/>
>       <model type='virtio'/>
>       <filterref filter='vdsm-no-mac-spoofing'/>
>       <link state='up'/>
>       <alias name='net0'/>
>       <address type='pci' domain='0x0000' bus='0x00' slot='0x03' function='0x0'/>
>     </interface>
>     <interface type='hostdev'>
>       <mac address='00:1a:4a:16:01:52'/>
>       <driver name='vfio'/>
>       <source>
>         <address type='pci' domain='0x0000' bus='0x02' slot='0x00' function='0x1'/>
>       </source>
>       <alias name='hostdev0'/>
>       <address type='pci' domain='0x0000' bus='0x00' slot='0x08' function='0x0'/>
>     </interface>
...
> </domain>

> <domain type='kvm' id='12'>
...
>     <interface type='network'>
>       <mac address='52:54:00:22:54:ba'/>
>       <source network='default' bridge='virbr0'/>
>       <target dev='vnet0'/>
>       <model type='virtio'/>
>       <alias name='net0'/>
>       <address type='pci' domain='0x0000' bus='0x00' slot='0x03' function='0x0'/>
>     </interface>
...
>     <hostdev mode='subsystem' type='pci' managed='yes'>
>       <driver name='vfio'/>
>       <source>
>         <address domain='0x0000' bus='0x02' slot='0x01' function='0x2'/>
>       </source>
>       <alias name='hostdev0'/>
>       <address type='pci' domain='0x0000' bus='0x00' slot='0x08' function='0x0'/>
>     </hostdev>
...
> </domain>


Thanks.

Does the guest of your macvlan-test-2 see the random mac address
assigned to the host VF? If so, it means that it would have another mac
address on the next time it starts, which is violate the IaaS that oVirt
would like to expose to its guests.