This has been a problem for ages. I wish I could fix it myself but I have to look elsewhere for help.
The kernel driver supports Linux SR-IOV guests but not Windows. The Mellanox provided driver (OFED) supports both, but it is available as a binary for few distros and older kernels. I don’t see why the kernel driver should lack this functionality.
There has been an “ugly” patch that works for older kernels here: Help with ConnectX 3 SR-IOV with Linux host and windows guest via kvm | ServeTheHome Forums
Does anyone here have the skills or know someone that has that can finally fix this issue given the popularity of these NICs? Maybe @wendell ?
I don’t have a connectX 3, but a connectX 4 lx. I’ve never used that SR-IOV function before, but I just did a quick test and the network card shows up in Windows 10 VM.
I followed these instructions: https://support.mellanox.com/s/article/HowTo-Configure-SR-IOV-for-ConnectX-4-ConnectX-5-ConnectX-6-with-KVM-Ethernet
I’ve installed the OFED drivers from Mellanox on the debian 11 system. On the windows VM I didn’t installed any drivers myself, but I guess Windows installed/recognised it automatically.
Yes, that is what I said, OFED works but why should we need OFED when there is already a Mellanox driver in the Linux kernel (Mellanox_EN) that can also work with Windows guests if someone fixes it?