Bug #7763
closedIX driver - fails to recognize media type with SFP after link drop
100%
Description
An issue was discovered by a customer running LAGG on ix0 and ix1 on the XG-2758. If a physical link to one of those interfaces dropped, the media type would come up as unknown.
I setup a XG-2758 with twinax connected from ix0 to ix1. If I remove the cable from ix0 or ix1, the media type will show as unknown when connected back in. It seems the longer it's unplugged, the more likely it is to fail. In some cases I was able to remove the cable and plug it back in without issue but the issue would eventually show itself. I also notice that the 10GBase-Twinax option under Speed and Duplex (Interfaces -> IX0) disappears when this issue happens. It's present in the drop-down prior to removing the link.
I tested this on pfSense 2.3.4_p1, 2.4, and FreeBSD 11-RELEASE.
It looks like FreeBSD is using Intel IX driver 3.1.13-k as the default IX driver. There was a bug reported back when 3.1.14 was the current driver similar to the issue we are seeing:
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=150249
A similar report can be found here:
https://groups.google.com/forum/#!topic/muc.lists.freebsd.stable/waROA12uu4w
I downloaded the latest Intel IX driver (3.2.15) and compiled it in FreeBSD 11. I added if_ix_load="YES" to /boot/loader.conf and rebooted. I verified the updated driver was loaded and it appeared to resolve the issue. I copied the kernel module to pfSense 2.4 and it appeared to be resolved there as well.
I suggest we update the IX driver on 2.4 to resolve this issue. I suspect this is isolated to SFP/Fiber ports, not ethernet.
Updated by Clinton Cory over 7 years ago
FreeBSD 11.1 also appears to be running 3.1.13-k driver. Intel driver:
https://downloadcenter.intel.com/download/14688/Intel-Network-Adapters-Driver-for-PCIe-10-Gigabit-Network-Connections-Under-FreeBSD-
Updated by Luiz Souza about 7 years ago
- Status changed from New to Feedback
- % Done changed from 0 to 100
Seems like you have found a real bug in the driver.
It is fixed in pfSense 2.4-RC, please try the next snapshot.
It is now safe to insert the SFP module after the boot and bring it up correctly.
Thanks!
Updated by Clinton Cory about 7 years ago
Loaded the latest snapshot from today on a XG-2758. The interface media type displayed properly:
ix0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500
options=e400bb<RXCSUM,TXCSUM,VLAN_MTU,VLAN_HWTAGGING,JUMBO_MTU,VLAN_HWCSUM,VLAN_HWTSO,RXCSUM_IPV6,TXCSUM_IPV6>
ether 00:08:a2:0b:1b:7f
hwaddr 00:08:a2:0b:1b:7f
inet6 fe80::208:a2ff:fe0b:1b7f%ix0 prefixlen 64 scopeid 0x1
nd6 options=21<PERFORMNUD,AUTO_LINKLOCAL>
media: Ethernet autoselect (10Gbase-Twinax <full-duplex,rxpause,txpause>)
status: active
When I unplugged the twinax (connected between ix0 and ix1) from ix0 and plugged it back in the media type changed to Unknown:
[2.4.0-RC][root@pfSense.localdomain]/root: ifconfig ix0
ix0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500
options=e400bb<RXCSUM,TXCSUM,VLAN_MTU,VLAN_HWTAGGING,JUMBO_MTU,VLAN_HWCSUM,VLAN_HWTSO,RXCSUM_IPV6,TXCSUM_IPV6>
ether 00:08:a2:0b:1b:7f
hwaddr 00:08:a2:0b:1b:7f
inet6 fe80::208:a2ff:fe0b:1b7f%ix0 prefixlen 64 scopeid 0x1
nd6 options=21<PERFORMNUD,AUTO_LINKLOCAL>
media: Ethernet autoselect (Unknown <rxpause,txpause>)
status: active
If I run ifconfig ix0 down and ifconfig ix0 up the media type displays properly.
Updated by Renato Botelho about 7 years ago
- Status changed from Feedback to Assigned
Updated by Luiz Souza about 7 years ago
The actual bug reported in this ticket is already fixed.
There was a bug in the driver that would fail to add the correct media types for a SFP module inserted after the boot (or for modules removed and reinserted after the boot). This is fixed.
There is another issue in pfSense that is not related to this specific driver and affects all SFP cards in pfSense.
You have to go through a 'ifconfig XX down' -> 'ifconfig XX up' cycle after insert a SFP module to actually read the current media options from the module.
Updated by Luiz Souza about 7 years ago
- Status changed from Assigned to Resolved
Closing this issue as the driver is working as intended.
The media options will not be detected until you restart the driver and a bug which could prevent the driver restart was fixed.
A new ticket should be opened to improve the overall situation in pfSense (and possibly on FreeBSD) after the 2.4 Release.