"huh, iovctl on my new Intel NIC says 'no space left on device', let's google, okay, that means you're requesting too many VFs.. what, I'm requesting two. let's search ENOSPC in the driver.. here, add debug prints.. no, that's not it, argh.. let's walk up the calls, who calls this sriov init.. ah the iflib one.. who calls that... pci_iov_init OHH HERE IT IS!! so it's my AMD X370 chipset PCIe being weird, not the ixgbe driver being broken!"
No one should go through that debugging process again, let's make it loud and clear when ENOSPC is from the PCIe code and not from the driver code :)