1 min read

How to Fix SFP Unsupported

How to Fix SFP Unsupported
Photo by Albert Stoynov / Unsplash

If you've encountered difficulties in locating the appropriate interface with a 10G uplink, you may have observed instances where the interface fails to appear. This happens when the ixgbe module fails to load due to the detection of an unsupported SFP+ module type.

Wondering how to resolve (ignore) this issue?

Identifying the Unsupported SFP Issue:

  1. Execute the command lspci | grep -i net to view the number of NIC ports connected to the motherboard.
  2. Check the number of interfaces by running ip a and compare it with the NIC ports detected in the previous lspci command.
  3. If the number of detected links is fewer than the NIC ports, it indicates an issue with the unsupported SFP+.

Understanding the Cause:

Intel restricts the use of certain SFPs on their NICs due to support issues, with settings configured in the EEPROM. Overcoming this involves adding a parameter to the grub file, as explained below.

To confirm if the issue is due to an unsupported SFP+, add the parameter options ixgbe allow_unsupported_sfp=1 to the ixgbe module in the file /etc/modprobe.d/ixgbe.conf.

Follow these steps:

  1. Open the file vim /etc/modprobe.d/ixgbe.conf.
  2. Add parameter: options ixgbe allow_unsupported_sfp=1.
  3. Reload the module with rmmod ixgbe; modprobe ixgbe.
  4. Check the interface status with ip a.

If the interface appears after these steps, it confirms an unsupported SFP+ issue. Note that this test is not permanent and resets upon reboot.

Permanent Fix:

To permanently resolve the issue, follow these steps:

  1. Open the grub file vim /etc/default/grub.
  2. Add the parameter to the line: GRUB_CMDLINE_LINUX="ixgbe.allow_unsupported_sfp=1".
  3. Update the grub configuration: grub-mkconfig -o /boot/grub/grub.cfg.
  4. Reload the module with rmmod ixgbe && modprobe ixgbe.
  5. Try to reboot your server, and the interface should now be functional.

The issue with the unsupported SFP+ is now resolved.