When kldload'ing the kernel modules for if_ixgb or ixgbe, I noticed that it doesn't properly change the interface state from inactive to active state (and in fact it seems to think the link is down as opposed to up). If I manually ifconfig up the interface, then it starts passing traffic. From dmesg... ix0: <Intel(R) PRO/10GbE PCI-Express Network Driver, Version - 2.4.8> port 0xef8 0-0xef9f mem 0xfae00000-0xfaefffff,0xfadfc000-0xfadfffff irq 26 at device 0.0 on pci7 ix0: Using MSIX interrupts with 9 vectors ix0: RX Descriptors exceed system mbuf max, using default instead! ix0: Ethernet address: 00:1b:21:88:51:c4 ix0: PCI Express Bus: Speed 5.0Gb/s Width x8 ix1: <Intel(R) PRO/10GbE PCI-Express Network Driver, Version - 2.4.8> port 0xef4 0-0xef5f mem 0xfac00000-0xfacfffff,0xfabfc000-0xfabfffff irq 25 at device 0.1 on pci7 ix1: Using MSIX interrupts with 9 vectors ix1: RX Descriptors exceed system mbuf max, using default instead! ix1: Ethernet address: 00:1b:21:88:51:c5 ix1: PCI Express Bus: Speed 5.0Gb/s Width x8 From pciconf -lv... ix0@pci0:7:0:0: class=0x020000 card=0x000c8086 chip=0x10fb8086 rev=0x01 hdr=0x00 vendor = 'Intel Corporation' device = '82599EB 10-Gigabit SFI/SFP+ Network Connection' class = network subclass = ethernet ix1@pci0:7:0:1: class=0x020000 card=0x000c8086 chip=0x10fb8086 rev=0x01 hdr=0x00 vendor = 'Intel Corporation' device = '82599EB 10-Gigabit SFI/SFP+ Network Connection' class = network subclass = ethernet How-To-Repeat: 1. Boot the 9.1-RC2 livecd. 2. Boot into Live CD mode. 3. kldload if_ixgb. 4. ifconfig will show that the interfaces are not active.
Responsible Changed From-To: freebsd-bugs->freebsd-net reclassify.
Garret: I can't reproduce this issue, I suspect it has been fixed for a while. Reopen it if there is still a problem here.
(In reply to Sean Bruno from comment #2) Sorry for not commenting on this sooner. Bottom line, Jack said it was by design in a post I made to freebsd-net some time ago (I can't find the link). It had something to do with Intel choosing "power saving support" as the default vs not choosing "power saving support". How did you try and repro the issue? What driver version/ISO did you try to repro the issue with? Etc. In particular, the problem is easy to repro (in my case) (if and only if) you choose to not enable DHCP by default (which ifconfig up's the interface), and it was particularly easy when dealing with the klds instead of having it statically compiled into the kernel. SFP modules might also be a factor.
(In reply to Garrett Cooper,425-314-3911 from comment #3) Ah, every single adapter we have in production has a static IP address. Maybe erj@ has a difference view on this?
I can also reproduce this issue. Anytime that the interface is down or up but without an IP address, the link state is "no carrier". Is there any way to disable "power saving support"?
(In reply to Alan Somers from comment #5) Yeah, I *just* ran into this today. Very confusing.
(In reply to Alan Somers from comment #5) Actually, that's not 100% true. It turns out that my interface _will_ report carrier status when up but with no IP. It just takes a few seconds.
The admin task in FreeBSD 12+ takes care of link status changes for this card, it can be delayed by a few cycles as asomers points out. Closing as OBE since supported FreeBSD versions should be working as expected.