Hello, I have server (FreeBSD 13.2-RELEASE) with 2x1Gbps pciconf -lBbcevV igb1 igb1@pci0:1:0:1: class=0x020000 rev=0x02 hdr=0x00 vendor=0x8086 device=0x10a7 subvendor=0x8086 subdevice=0x34dc vendor = 'Intel Corporation' device = '82575EB Gigabit Network Connection' pciconf -lBbcevV igb0 igb0@pci0:1:0:0: class=0x020000 rev=0x02 hdr=0x00 vendor=0x8086 device=0x10a7 subvendor=0x8086 subdevice=0x34dc vendor = 'Intel Corporation' device = '82575EB Gigabit Network Connection' Configured lagg0 on them: ifconfig_igb1="-tso -lro up" ifconfig_igb0="-tso -lro up" cloned_interfaces="lagg0 vlan88 vlan5" #LAGG LACP ifconfig_lagg0="laggproto lacp laggport igb0 laggport igb1 up -wol -tso -lro" # ifconfig lagg0 lagg0: flags=8943<UP,BROADCAST,RUNNING,PROMISC,SIMPLEX,MULTICAST> metric 0 mtu 1500 options=4e500bb<RXCSUM,TXCSUM,VLAN_MTU,VLAN_HWTAGGING,JUMBO_MTU,VLAN_HWCSUM,VLAN_HWFILTER,VLAN_HWTSO,RXCSUM_IPV6,TXCSUM_IPV6,NOMAP> everything works correctly. I decide to add another network card (Intel i350 2x1Gbps) pciconf -lBbcevV igb2 igb2@pci0:3:0:0: class=0x020000 rev=0x01 hdr=0x00 vendor=0x8086 device=0x1521 subvendor=0x8086 subdevice=0x5002 vendor = 'Intel Corporation' device = 'I350 Gigabit Network Connection' pciconf -lBbcevV igb3 igb3@pci0:3:0:1: class=0x020000 rev=0x01 hdr=0x00 vendor=0x8086 device=0x1521 subvendor=0x8086 subdevice=0x5002 vendor = 'Intel Corporation' device = 'I350 Gigabit Network Connection' Both Network cards using the same driver: sysctl dev.igb | grep driver dev.igb.3.iflib.driver_version: 7.6.1-k dev.igb.3.%driver: igb dev.igb.2.iflib.driver_version: 7.6.1-k dev.igb.2.%driver: igb dev.igb.1.iflib.driver_version: 7.6.1-k dev.igb.1.%driver: igb dev.igb.0.iflib.driver_version: 7.6.1-k dev.igb.0.%driver: igb I added igb2 and igb3 to lagg0 and server stop recieve traffic. I did some test and I noticed that igb2 and igb3 does not recievie tagged frames. I did a separate one lagg1 with igb2 and igb3. While lagg1 has default VLAN_HWFILTER servers does not see tagged frame. Disabling VLAN_HWFILTER solves the problem.
(In reply to Konrad from comment #0) Are those vlan interfaces: cloned_interfaces="lagg0 vlan88 vlan5" configured on top of lagg0? Could you, please, provide exact config?
Yes, vlans on them: ifconfig_igb1="-tso -lro up" #82575EB ifconfig_igb0="-tso -lro up" #82575EB ifconfig_igb2="-tso -lro up" #i350 ifconfig_igb3="-tso -lro up" #i350 cloned_interfaces="lagg0 vlan88 vlan5" #LAGG LACP ifconfig_lagg0="laggproto lacp laggport igb0 laggport igb1 laggport igb2 laggport igb3 up -wol -tso -lro" ifconfig_vlan88="inet 10.8.8.112 netmask 255.255.255.0 vlan 88 vlandev lagg0" ifconfig_vlan5="inet 10.9.5.200 netmask 255.255.255.0 vlan 5 vlandev lagg0"
To rule out possible bug in i350 code, can you retry with i350 alone?
I did separate lagg1 with i350 only fconfig_igb2="-tso -lro up" ifconfig_igb3="-tso -lro up" ifconfig_lagg1="laggproto lacp laggport igb2 laggport igb3 up -wol -tso -lro" ifconfig_vlan88="inet 10.8.8.112 netmask 255.255.255.0 vlan 88 vlandev lagg1" ifconfig_vlan5="inet 10.9.5.200 netmask 255.255.255.0 vlan 5 vlandev lagg1" I see only untagged flow (LLDP) using tcpdump -ni lagg1 when I put ifconfig lagg1 -vlanhwfilter I see proper traffic, including tagged vlans
Can you paste the whole block from dmesg? I'm interested in the EEPROM. For the record, pings works: igb0: <Intel(R) I350 (Copper)> mem 0x9c200000-0x9c2fffff,0x9c30c000-0x9c30ffff at device 0.0 on pci6 igb0: EEPROM V1.63-0 eTrack 0x80000ee3 igb0: Using 1024 TX descriptors and 1024 RX descriptors igb0: Using 8 RX queues 8 TX queues igb0: Using MSI-X interrupts with 9 vectors igb0: Ethernet address: b4:96:91:2a:6b:e4 igb0: netmap queues/slots: TX 8/1024, RX 8/1024
dmesg is gone but I can put: sysctl -a | grep -i eeprom dev.igb.3.fw_version: EEPROM V1.67-0 Option ROM V17-b0-p12 eTrack 0x80000dd0 dev.igb.2.fw_version: EEPROM V1.67-0 Option ROM V17-b0-p12 eTrack 0x80000dd0 dev.igb.1.fw_version: EEPROM V2.4-0 eTrack 0x00012b80 dev.igb.0.fw_version: EEPROM V2.4-0 eTrack 0x00012b80 sysctl -a | grep -i igb.3 | grep -i pnpinfo dev.igb.3.%pnpinfo: vendor=0x8086 device=0x1521 subvendor=0x8086 subdevice=0x5002 class=0x020000 igb3@pci0:3:0:1: class=0x020000 rev=0x01 hdr=0x00 vendor=0x8086 device=0x1521 subvendor=0x8086 subdevice=0x5002 vendor = 'Intel Corporation' device = 'I350 Gigabit Network Connection' class = network subclass = ethernet bar [10] = type Memory, range 32, base rxb1a00000, size 1048576, enabled bar [1c] = type Memory, range 32, base rxb1c00000, size 16384, enabled cap 01[40] = powerspec 3 supports D0 D3 current D0 cap 05[50] = MSI supports 1 message, 64 bit, vector masks cap 11[70] = MSI-X supports 10 messages, enabled Table in map 0x1c[0x0], PBA in map 0x1c[0x2000] cap 10[a0] = PCI-Express 2 endpoint max data 256(512) FLR RO NS max read 512 link x4(x4) speed 5.0(5.0) ASPM disabled(L0s/L1) cap 03[e0] = VPD ecap 0001[100] = AER 2 0 fatal 0 non-fatal 1 corrected ecap 0003[140] = Serial 1 a0369fffff909f90 ecap 000e[150] = ARI 1 ecap 0010[160] = SR-IOV 1 IOV disabled, Memory Space disabled, ARI disabled 0 VFs configured out of 8 supported First VF RID Offset 0x0080, VF RID Stride 0x0004 VF Device ID 0x1520 Page Sizes: 4096 (enabled), 8192, 65536, 262144, 1048576, 4194304 ecap 0017[1a0] = TPH Requester 1 ecap 000d[1d0] = ACS 1 Source Validation unavailable, Translation Blocking unavailable P2P Req Redirect unavailable, P2P Cmpl Redirect unavailable P2P Upstream Forwarding unavailable, P2P Egress Control unavailable P2P Direct Translated unavailable, Enhanced Capability unavailable PCI-e errors = Correctable Error Detected Unsupported Request Detected Corrected = Advisory Non-Fatal Error VPD ident = 'I350 GbE Controller' VPD ro V0 = 'FFV17.0.12' VPD ro PN = '424RR' VPD ro MN = '1028' VPD ro V1 = 'DSV1028VPDR.VER1.0' VPD ro V3 = 'DTINIC' VPD ro V4 = 'DCM1001008FC52101008FC53201008FC54301008FC5' VPD ro V5 = 'NPY2' VPD ro V6 = 'PMT13' VPD ro V7 = 'NMVIntel Corp'
Can you check whether it works on 13.1-RELEASE or CURRENT?
If you find that it doesn't work as well, can you try changing DBG macro in /usr/src/sys/dev/e1000/e1000_osdep.h to 0 and rebuilding the kernel? When you try to reproduce your issue then, you should get various debugging informations in the dmesg which may help fix your issue.