I mean 82576 and I350, sorry for the typo error. Both types of NIC support SRIOV, I've already using the VF.
Thanks for the links share to me, I've also read these links before I asked this question.
From the reference Configure QoS with Intel® Flexible Port Partitioning , seems VM is able to change the VF's MAC address, but when I do bonding according to the reference, error message report and bonding not success, the error message is:
Master "bond0": Error: SIOCBONDENSLAVE failed: Cannot assign requested address
Check on the HOST,
#dmesg | tail
igb 0000:82:00.0: VF 5 attempted to override administratively set MAC address
Reload the VF driver to resume operations
But from the reference SR-IOV on NIC 82599: Are VF MAC Addresses unique? , Patrick said: "One caveat – User can use IPROUTE2 utility to assign a unique MAC address to a VF from within the host Operating System. Once the new MAC address is assigned, VM that has this particular VF assigned to will not be able to alter its MAC address. This is called “administratively assigned MAC” and is a security feature."
And it's really what the igb driver's behavior:
case E1000_VF_SET_MAC_ADDR:
retval = -EINVAL;
if (!(vf_data->flags & IGB_VF_FLAG_PF_SET_MAC))
retval = igb_set_vf_mac_addr(adapter, msgbuf, vf);
else
dev_warn(&pdev->dev, "VF %d attempted to override administratively set MAC address\nReload the VF driver to resume operations\n", vf);
break;
So, I'm confused with these reference and the test result.
PS. I suppose the hardware NIC should have no limit for the bonding mode selection, but the driver does.
My current igb driver is 5.0.5-k and igbvf driver is 2.0.2-k.