OK its been a fun day, with a couple reinstalls of PVE to get things right. I now have VFs defined for 3 of the 4 ports on my I350-T4. I also took the time to setup my Intel UHD 630 iGPU for mediated devices, so I can build a Plex VM and get hardware transcoding. I think I am going to stop here for a bit.
Both of these documents:
https://www.reddit.com/r/Proxmox/comments/cm81tc/tutorial_enabling_sriov_for_intel_nic_x550t2_on/ and
https://forums.servethehome.com/ind...iny-m920q-or-m720q-with-cx3-and-sr-iov.35664/ played a role in getting to where I am.
If I can give some advice...read the documents and then re-read them again. There are nuances everywhere and you might miss something. For example I thought I had to blacklist my NIC driver. Well I read the section wrong...it was the vf driver that needed to be blacklisted but then at the end the poster explained that it did not need to be blacklisted. You cannot just think its a straight copy paste. I would also focus on one topic, make sure its done to completion and working successfully, before moving on. I tried to do SR-IOV for my NIC and setup mediated device support for my iGPU. Turns out I bit off more than I could chew...cost me a couple hours and at least one reinstall.
Remember slow and steady wins the race! I will keep updating here as I move on with my journey. Next is to build an OPNsense VM and pass PFs to it. The VFs will be for the other VMs I need to build.
Ok I figured that I would ensure from now on...that my posts follow each other. This way ppl can follow along.
I did run into one potential problem, and that is my VFs are coming up before my PFs are enabled in the boot process. Does anyone know what I need to do in order to avoid this issue?
Here is some output from my boot up:
Jun 22 18:42:01 pve01 kernel: igbvf 0000:02:11.2: PF still in reset state. Is the PF interface up?
Jun 22 18:42:01 pve01 kernel: igbvf 0000:02:11.2: Assigning random MAC address.
Jun 22 18:42:01 pve01 kernel: igbvf 0000:02:11.2: PF still resetting
Jun 22 18:42:01 pve01 kernel: igbvf 0000:02:11.2: Intel(R) I350 Virtual Function
Jun 22 18:42:01 pve01 kernel: igbvf 0000:02:10.6 enp1s0f2v1: renamed from eth0
Jun 22 18:42:01 pve01 kernel: igbvf 0000:02:11.2: Address: ea:61:21:81:f9:82
Jun 22 18:42:01 pve01 kernel: pci 0000:02:11.6: [8086:1520] type 00 class 0x020000 PCIe Endpoint
Jun 22 18:42:01 pve01 kernel: pci 0000:02:11.6: Adding to iommu group 24
Jun 22 18:42:01 pve01 kernel: igbvf 0000:02:11.6: enabling device (0000 -> 0002)
Jun 22 18:42:01 pve01 kernel: igbvf 0000:02:11.6: PF still in reset state. Is the PF interface up?
Jun 22 18:42:01 pve01 kernel: igbvf 0000:02:11.6: Assigning random MAC address.
Jun 22 18:42:01 pve01 kernel: igbvf 0000:02:11.6: PF still resetting
Jun 22 18:42:01 pve01 kernel: igbvf 0000:02:11.6: Intel(R) I350 Virtual Function
Jun 22 18:42:01 pve01 kernel: igbvf 0000:02:11.6: Address: 8e:c2:cf:62:be:9e
Jun 22 18:42:01 pve01 kernel: igbvf 0000:02:11.2 enp1s0f2v2: renamed from eth1
Jun 22 18:42:01 pve01 kernel: igbvf 0000:02:11.6 enp1s0f2v3: renamed from eth0
Jun 22 18:42:01 pve01 kernel: igb 0000:01:00.0: setting MAC aa:bb:cc:f0:00:00 on VF 0
Jun 22 18:42:01 pve01 kernel: igb 0000:01:00.0: Reload the VF driver to make this change effective.
Jun 22 18:42:01 pve01 kernel: igb 0000:01:00.0: The VF MAC address has been set, but the PF device is not up.
Jun 22 18:42:01 pve01 kernel: igb 0000:01:00.0: Bring the PF device up before attempting to use the VF device.
Jun 22 18:42:01 pve01 kernel: igb 0000:01:00.0: setting MAC aa:bb:cc:f0:00:01 on VF 1
Jun 22 18:42:01 pve01 kernel: igb 0000:01:00.0: Reload the VF driver to make this change effective.
Jun 22 18:42:01 pve01 kernel: igb 0000:01:00.0: The VF MAC address has been set, but the PF device is not up.
Jun 22 18:42:01 pve01 kernel: igb 0000:01:00.0: Bring the PF device up before attempting to use the VF device.
Does anyone know of a way to delay the vf creation, so that the physical ports come live in the boot process first? Am I making more out of this than I have to?