Re: igc problems with heavy traffic

From: mike tancsa <mike_at_sentex.net>
Date: Thu, 04 Aug 2022 17:29:26 UTC
On 8/4/2022 1:12 PM, mike tancsa wrote:
> On 7/31/2022 11:41 PM, Jim King wrote:
>> I'm trying to use a Qnap dual port 2.5Gb NIC with FreeBSD 13.1. 
>> FreeBSD recognizes the NIC and I'm able to connect to my LAN at 1Gb.  
>> However, trying to push heavy traffic through the NIC results in a 
>> temporary loss of connectivity:  traffic stops and the message "igc0: 
>> link state changed to DOWN" appears in the system log.  About 10 
>> seconds later the message "igc0: link state changed to UP" is logged, 
>> followed by some messages from dhclient indicating that it has 
>> acquired a lease.  At that point network connectivity works normally, 
>> until I try to push a lot of traffic again.  I've been able to 
>> trigger this every time using iperf3 from another PC on my LAN, and 
>> by using Ookla's speedtest client (my Internet service is good for 
>> about 900 Mbps).
>>
> How long does it take to wedge the nic ? I have a pair of Topton 
> routers (4 IGC NICs) back to back and a simple iperf3 test seems to 
> work ok between the 2 units.
>
Actually, I was able to reproduce this too running iperf3 -P4 for about 
60 seconds. Watching via sysutils/ifstat, it does indeed drop traffic 
when the link drops


ifstat -b

        igc0                igc1               pflog0
  Kbps in  Kbps out   Kbps in  Kbps out   Kbps in  Kbps out
     0.88      1.93      0.00      0.00      0.00      0.00
     1.32      1.45      0.00      0.00      0.00      0.00
     0.88      1.45      0.00      0.00      0.00      0.00
     1.32      1.45      0.00      0.00      0.00      0.00
     0.88      1.45      0.00      0.00      0.00      0.00
     0.88      1.45      0.00      0.00      0.00      0.00
     4.68     12.23   2497.66  395238.6      0.00      2.34
     0.94      6.08  15036.53  2.31e+06      0.00      0.00
     0.94      7.26  15076.75  2.31e+06      0.00      0.00
     0.94      6.08  15014.83  2.31e+06      0.00      0.00
     0.94      7.26  15054.63  2.31e+06      0.00      0.00
     0.94      7.26  15022.16  2.31e+06      0.00      0.00
     0.94      7.25  14928.42  2.31e+06      0.00      0.00
     1.87      7.25  15000.98  2.31e+06      0.00      0.00
     1.40      7.25  14960.84  2.31e+06      0.00      0.00
     1.40      7.25  14919.44  2.31e+06      0.00      0.00
     1.87      7.26  14789.44  2.31e+06      0.00      0.00
     2.70      8.56   1168.12  178704.6      0.00      0.00
     1.77      6.85      0.00      0.00      0.00      0.00
     1.40      9.97      0.00      0.00      0.00      0.00
     1.87      7.26  10732.92  1.83e+06      0.00      0.00
     0.94      7.25  14166.38  2.32e+06      0.00      0.00
     0.94      6.09  14269.06  2.31e+06      0.00      0.00
     1.40      6.09  14402.47  2.31e+06      0.00      0.00


This is on 13.1-STABLE from Aug 3.

igc0@pci0:2:0:0:        class=0x020000 rev=0x03 hdr=0x00 vendor=0x8086 
device=0x15f3 subvendor=0x8086 subdevice=0x0000
     vendor     = 'Intel Corporation'
     device     = 'Ethernet Controller I225-V'
     class      = network
     subclass   = ethernet
     bar   [10] = type Memory, range 32, base 0x80600000, size 1048576, 
enabled
     bar   [1c] = type Memory, range 32, base 0x80700000, 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 5 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 x1(x1) speed 5.0(5.0) ASPM L1(L1)
     ecap 0001[100] = AER 2 0 fatal 0 non-fatal 0 corrected
     ecap 0003[140] = Serial 1 00e269ffff5a4be9
     ecap 0018[1c0] = LTR 1
     ecap 001f[1f0] = Precision Time Measurement 1
     ecap 001e[1e0] = L1 PM Substates 1

Jasper Lake chipset N5105 CPU 2.00GHz


     ---Mike