Hi,I managed to get SR-IOV with an Intel I350 NIC to work.For this I followed the documentation on this page:
https://wiki.libvirt.org/page/Networking#Assignment_from_a_pool_of_SRIOV_VFs_in_a_libvirt_.3Cnetwork.3E_definition
But as I have more VMs then VF on the NIC I also have a bridge wich serves the other guests. As I run Debian Buster as host I followed the documentation here:
https://wiki.libvirt.org/page/Networking#Debian.2FUbuntu_BridgingIf I use only the SRIOV everything works as expected. All guests can be reached for the network and the guests and host can reach each other. The same goes for a sole bridged environment.
As I dived into the issue I found an answer form the intel community: https://community.intel.com/t5/Ethernet-Products/82599-VF-to-Linux-host-bridge/td-p/351802It says I need to add the "VF mac addresses and eth0 mac address to bridge forwarding database".
I have done this with the following command: bridge fdb add 52:54:00:3c:1c:e6 dev eth_lan0The mac address is from my VM which is on the bridge. And the eth_lan0 interface is the physical interface of my bridge and also the PF of my I350 NIC.
This seems to work. But doing this manually is annoying and a bit of a hassle when creating new VMs on the bridge.
I there a way to let libvirt do this work? Best regards Philipp PS: This presentation shows it pretty well on page 33: https://events.static.linuxfound.org/sites/events/files/slides/LinuxConJapan2014_makita_0.pdf
<<attachment: philipp.vcf>>