I've purchased a Dell PowerEdge R630 with an integrated Intel X520/I350 (2x SFP + 2x RJ45) network card. I've setup the server locally (on a 1G RJ45 network) to test that everything worked as expected and it did; everything worked, no error messages.

Then I shipped it to the datacenter and let them rack it up for me. As defined in the colocation agreement, they connected the server using a 10G (SFP+) port. As somebody with little to no SFP+ experience, I - naively - assumed it will "just work", but when I tried to (re)install the operating system via iDRAC/VNC and noticed that the one connected SFP+ network link was missing (there is only eno2 to eno4, no eno1). Thought, iDRAC shows the first port as connected.

I first thought Linux is missing some drivers, but then I noticed that there is already an error message during the boot process (before the operating system gets loaded):

As already mentioned, I got barely any knowledge about SFP+ networks which puts me in a rather uncomfortable position: I can't even tell whether thats a hardware issue (such as a compatibility issue with the installed SFP+ module) or a software/configuration issue. Any ideas what I should look at?

  • 1
    This is the UEFI preboot environment, and it means you won't be able to PXE boot from the NIC. You probably don't care about this, so instead you should show relevant information from the OS (e.g. from dmesg). Aug 4 '20 at 11:26
  • Okay, I'll try to boot the installer (Proxmox) into debug mode and see whether I can't find any related error message there. I'll update the question accordingly.
    – miho
    Aug 4 '20 at 11:30
  • I booted the installer into debug mode to get shell access and ran dmesg once the installer was far enough to be ready to configure the network and then searched for some related messages. But, looking at the error message which sounds similar to the pre-boot error message ("unsupported SFP+ or QSFP module type was detected" from dmesg), it sounds to me as if the Intel X520 network adapter doesn't like the SFP+ module.
    – miho
    Aug 4 '20 at 12:13

This Intel NIC does have an on-device whitelist of SFP+ modules it will accept, but it is possible to disable this and attempt to use whatever SFP+ module you want. You need to pass the ixgbe module parameter allow_unsupported_sfp=1.

You can test whether this will work by unloading and reloading the module with the option given:

# rmmod ixgbe
# modprobe ixgbe allow_unsupported_sfp=1

The usual way to make this persistent is to add the module option to a file such as /etc/modprobe.d/ixgbe.conf and then run sudo update-initramfs on Debian based systems or sudo dracut -f on Red Hat based systems. The content of that file would be:

options ixgbe allow_unsupported_sfp=1

It can also be added to the kernel command line at boot, i.e.: ixgbe.allow_unsupported_sfp=1 so that you can use it in an installation environment.

  • Thank you very much for your help! I didn't try it yet, but I guess that might work. Since thats supposed to become a production system I don't feel entirely comfortable overriding such a flag, so I just reached out to the datacenter a second ago. Maybe they are open to use another SFP+ module - I wouldn't mind paying them for one officially supported by Intel and probably I am not the first one to ask anyhow - but if thats not possible I will try your solution.
    – miho
    Aug 4 '20 at 12:51
  • @miho Eh, if you didn't buy the SFP+ module on Wish then it should be fine. It really only means Intel hasn't tested that particular module. But it's always a good idea to test them yourself before shipping the server out, especially since performance can vary widely among different modules. Aug 4 '20 at 18:10

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.