You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
1G SFP modules that actively auto-negotiate on axgbe are rather slow to come up in link state, which can cause a race condition as described in opnsense/core#7113 (comment)
However, one would expect that after boot, removing the SFP and inserting it again would eventually lead to dhclient recovering and fetching an IP address for the interface after the link up. Instead, the driver remains in an "off" state, where only out traffic can be seen on tcpdump, and the device does not receive any traffic.
This issue has only been observed with (slow) 1G modules, which suggests that there is still an issue in the driver wrt the link up flow. Interfaces that have a static IP assigned to them are not affected. The issue is also unlikely to be reproducible on all 1G SFP modules.
To Reproduce
Steps to reproduce the behavior:
With a 1G module inserted, assign ax0 as WAN interface.
Reboot the machine.
After boot, there is no IP address on the WAN interface.
Remove & insert SFP, link up event coalescing from devd will fire, and dhclient will start, but will not settle as a tcpdump will reveal no incoming traffic.
sysctl dev.ax.0 will show no activity on the receive queues.
ifconfig ax0 down && ifconfig ax0 up
WAN interface will get an IP address.
Expected behavior
For axgbe to receive traffic after a link up after boottime interface configuration.
Describe alternatives you considered
A manual ifconfig ax<N> down && ifconfig ax<N> up fixes this. As a workaround, one can create a script in /usr/local/etc/rc.syshook.d/start named 90-axgbe which contains the above down & up.
The text was updated successfully, but these errors were encountered:
swhite2
changed the title
axgbe: traffic stall for 1G modules on link-up after interface configuration
axgbe: traffic stall for 1G modules on link-up after boottime interface configuration
Jun 5, 2024
Important notices
Before you add a new report, we ask you kindly to acknowledge the following:
Describe the bug
1G SFP modules that actively auto-negotiate on
axgbe
are rather slow to come up in link state, which can cause a race condition as described in opnsense/core#7113 (comment)However, one would expect that after boot, removing the SFP and inserting it again would eventually lead to
dhclient
recovering and fetching an IP address for the interface after the link up. Instead, the driver remains in an "off" state, where only out traffic can be seen on tcpdump, and the device does not receive any traffic.This issue has only been observed with (slow) 1G modules, which suggests that there is still an issue in the driver wrt the link up flow. Interfaces that have a static IP assigned to them are not affected. The issue is also unlikely to be reproducible on all 1G SFP modules.
To Reproduce
Steps to reproduce the behavior:
devd
will fire, and dhclient will start, but will not settle as atcpdump
will reveal no incoming traffic.sysctl dev.ax.0
will show no activity on the receive queues.ifconfig ax0 down && ifconfig ax0 up
Expected behavior
For
axgbe
to receive traffic after a link up after boottime interface configuration.Describe alternatives you considered
A manual
ifconfig ax<N> down && ifconfig ax<N> up
fixes this. As a workaround, one can create a script in/usr/local/etc/rc.syshook.d/start
named90-axgbe
which contains the above down & up.The text was updated successfully, but these errors were encountered: