Intel Ethernet Controller I225-LM Support?
-
@whizatit got onboard 550 series on my current setup working perfectly at Gbit, got no idea if it will link up and work at 2.5 Gbit though.
-
Sorry, I was being facetious. (1000Gb = 1Tbps!)
I have not personally rested anything at 2.5Gb or 5Gb but there other reports here on the forum of Intel base-T cards supporting that currently.
https://forum.netgate.com/post/955570I don't believe there are any that support fibre at those speeds currently. If you need that your options are the Broadcom card with hacked firmware or some Realtek cards.
Steve
-
@stephenw10 Im looking for an Intel multi gig card that will support 2.5 Gbps as i currently have 1.5 Gbps internet and the LAN out is 2.5 Gbps along with my 2.5 Gbps switches etc.
My bottleneck is the 1Gbps Intel pro card in the PfSense box atm.
-
Right, it looks like the NIC linked there supports that: X710T2LBLK
I've never tested that myself though.
Steve
-
@stephenw10 Roger that!
-
@whizatit Netgate has added Intel i225-lm support: https://github.com/pfsense/FreeBSD-src/commit/402cb8c4ab502887dc8b8651646890b8e047dd17
Just took a look at the code quickly, it seems that 70% source code are based
on Linux's igc, which is GPL license. Is Intel's igc dual licensed under the
BSD and GPL licenses now? -
@dave-1 Inteesting
-
The
igc
driver is in 2.5.0, but support may vary depending on the card. There may be some cards out there not yet covered by the driver or may need IDs added and so on. The only way to know for sure is to try it, or at least compare the IDs of the card against the driver code. -
Any updates on this? It looks like the new Netgate 6100 uses the i225-LM and is taking advantage of the support included in 2.5.0+. Is there is a list of tested i225-LM cards somewhere?
-
You can see the driver supported devices here:
https://github.com/pfsense/FreeBSD-src/blob/devel-12/sys/dev/igc/igc_hw.h#L44As far as I know though the only tested NIC is that in the 6100:
igc0@pci0:4:0:0: class=0x020000 card=0x00008086 chip=0x15f38086 rev=0x01 hdr=0x00 vendor = 'Intel Corporation' device = 'Ethernet Controller I225-V' class = network subclass = ethernet
Steve
-
I decided to give it a try and picked up a PCIe adapter for my Netgate 7100 and the dual port QNAP version listed by @whizatit and tested with 21.05. The igc driver seems to be correctly detecting both I225-LMs properly, and the port responds properly when forcing speed and duplex (as confirmed by watching ifconfig and the switchport that the I225-LM port is connected to). That said, I have been unable to get the I225-LM port (I am testing with igc0) to receive traffic. Packets show up as "errors in" in the interface counters. arp on the 7100 only shows the I225-LM interface, packet captures only show outbound traffic on the 7100 and captures from a device connected to the I225-LM show outbound traffic and inbound arp traffic from the I225-LM.
I tried disabling hardware checksum offloading, but this alone doesn't appear to have done anything.
Any recommendations for what I should try?
Here are my pciconf, ifconfig and sysctl output for this card:
igc0@pci0:4:0:0: class=0x020000 card=0xc0021baa chip=0x15f28086 rev=0x03 hdr=0x00 vendor = 'Intel Corporation' device = 'Intel(R) Ethernet Controller I225-LM' class = network subclass = ethernet bar [10] = type Memory, range 32, base 0xded00000, size 1048576, enabled bar [1c] = type Memory, range 32, base 0xdef00000, 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 128(512) FLR RO NS max read 512 link x1(x1) speed 5.0(5.0) ASPM disabled(L1) ecap 0001[100] = AER 2 1 fatal 1 non-fatal 0 corrected ecap 0003[140] = Serial 1 245ebeffff64ce5b ecap 0018[1c0] = LTR 1 ecap 001f[1f0] = Precision Time Measurement 1 ecap 001e[1e0] = L1 PM Substates 1 igc1@pci0:7:0:0: class=0x020000 card=0xc0021baa chip=0x15f28086 rev=0x03 hdr=0x00 vendor = 'Intel Corporation' device = 'Intel(R) Ethernet Controller I225-LM' class = network subclass = ethernet bar [10] = type Memory, range 32, base 0xdf000000, size 1048576, enabled bar [1c] = type Memory, range 32, base 0xdf200000, 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 128(512) FLR RO NS max read 512 link x1(x1) speed 5.0(5.0) ASPM disabled(L1) ecap 0001[100] = AER 2 0 fatal 0 non-fatal 0 corrected ecap 0003[140] = Serial 1 245ebeffff64ce5a ecap 0018[1c0] = LTR 1 ecap 001f[1f0] = Precision Time Measurement 1 ecap 001e[1e0] = L1 PM Substates 1
igc0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500 description: Test options=8120b8<VLAN_MTU,VLAN_HWTAGGING,JUMBO_MTU,VLAN_HWCSUM,WOL_MAGIC,VLAN_HWFILTER> capabilities=f53fbb<RXCSUM,TXCSUM,VLAN_MTU,VLAN_HWTAGGING,JUMBO_MTU,VLAN_HWCSUM,TSO4,TSO6,LRO,WOL_UCAST,WOL_MCAST,WOL_MAGIC,VLAN_HWFILTER,VLAN_HWTSO,NETMAP,RXCSUM_IPV6,TXCSUM_IPV6> ether 24:5e:be:64:ce:5b inet6 fe80::265e:beff:fe64:ce5b%igc0 prefixlen 64 scopeid 0x1 inet 10.222.222.1 netmask 0xffffff00 broadcast 10.222.222.255 media: Ethernet autoselect (1000baseT <full-duplex>) status: active supported media: media autoselect media 2500Base-T media 1000baseT media 1000baseT mediaopt full-duplex media 100baseTX mediaopt full-duplex media 100baseTX media 10baseT/UTP mediaopt full-duplex media 10baseT/UTP nd6 options=21<PERFORMNUD,AUTO_LINKLOCAL>
dev.igc.0.interrupts.rx_desc_min_thresh: 0 dev.igc.0.interrupts.asserts: 45 dev.igc.0.mac_stats.tso_txd: 0 dev.igc.0.mac_stats.tx_frames_1024_1522: 0 dev.igc.0.mac_stats.tx_frames_512_1023: 0 dev.igc.0.mac_stats.tx_frames_256_511: 0 dev.igc.0.mac_stats.tx_frames_128_255: 0 dev.igc.0.mac_stats.tx_frames_65_127: 0 dev.igc.0.mac_stats.tx_frames_64: 41 dev.igc.0.mac_stats.mcast_pkts_txd: 0 dev.igc.0.mac_stats.bcast_pkts_txd: 41 dev.igc.0.mac_stats.good_pkts_txd: 41 dev.igc.0.mac_stats.total_pkts_txd: 248 dev.igc.0.mac_stats.good_octets_txd: 2624 dev.igc.0.mac_stats.good_octets_recvd: 32709 dev.igc.0.mac_stats.rx_frames_1024_1522: 0 dev.igc.0.mac_stats.rx_frames_512_1023: 37 dev.igc.0.mac_stats.rx_frames_256_511: 0 dev.igc.0.mac_stats.rx_frames_128_255: 15 dev.igc.0.mac_stats.rx_frames_65_127: 14 dev.igc.0.mac_stats.rx_frames_64: 30 dev.igc.0.mac_stats.mcast_pkts_recvd: 68 dev.igc.0.mac_stats.bcast_pkts_recvd: 28 dev.igc.0.mac_stats.good_pkts_recvd: 96 dev.igc.0.mac_stats.total_pkts_recvd: 302 dev.igc.0.mac_stats.xoff_txd: 207 dev.igc.0.mac_stats.xoff_recvd: 0 dev.igc.0.mac_stats.xon_txd: 0 dev.igc.0.mac_stats.xon_recvd: 0 dev.igc.0.mac_stats.alignment_errs: 0 dev.igc.0.mac_stats.crc_errs: 0 dev.igc.0.mac_stats.recv_errs: 0 dev.igc.0.mac_stats.recv_jabber: 0 dev.igc.0.mac_stats.recv_oversize: 0 dev.igc.0.mac_stats.recv_fragmented: 0 dev.igc.0.mac_stats.recv_undersize: 0 dev.igc.0.mac_stats.recv_no_buff: 0 dev.igc.0.mac_stats.missed_packets: 206 dev.igc.0.mac_stats.defer_count: 0 dev.igc.0.mac_stats.sequence_errors: 0 dev.igc.0.mac_stats.symbol_errors: 0 dev.igc.0.mac_stats.collision_count: 0 dev.igc.0.mac_stats.late_coll: 0 dev.igc.0.mac_stats.multiple_coll: 0 dev.igc.0.mac_stats.single_coll: 0 dev.igc.0.mac_stats.excess_coll: 0 dev.igc.0.queue_rx_3.rx_irq: 0 dev.igc.0.queue_rx_3.rxd_tail: 128 dev.igc.0.queue_rx_3.rxd_head: 0 dev.igc.0.queue_rx_2.rx_irq: 0 dev.igc.0.queue_rx_2.rxd_tail: 128 dev.igc.0.queue_rx_2.rxd_head: 0 dev.igc.0.queue_rx_1.rx_irq: 0 dev.igc.0.queue_rx_1.rxd_tail: 128 dev.igc.0.queue_rx_1.rxd_head: 0 dev.igc.0.queue_rx_0.rx_irq: 0 dev.igc.0.queue_rx_0.rxd_tail: 128 dev.igc.0.queue_rx_0.rxd_head: 0 dev.igc.0.queue_tx_3.tx_irq: 0 dev.igc.0.queue_tx_3.txd_tail: 0 dev.igc.0.queue_tx_3.txd_head: 0 dev.igc.0.queue_tx_2.tx_irq: 0 dev.igc.0.queue_tx_2.txd_tail: 0 dev.igc.0.queue_tx_2.txd_head: 0 dev.igc.0.queue_tx_1.tx_irq: 0 dev.igc.0.queue_tx_1.txd_tail: 0 dev.igc.0.queue_tx_1.txd_head: 0 dev.igc.0.queue_tx_0.tx_irq: 0 dev.igc.0.queue_tx_0.txd_tail: 41 dev.igc.0.queue_tx_0.txd_head: 41 dev.igc.0.fc_low_water: 32752 dev.igc.0.fc_high_water: 32768 dev.igc.0.rx_control: 71335966 dev.igc.0.device_control: 404489793 dev.igc.0.watchdog_timeouts: 0 dev.igc.0.rx_overruns: 1 dev.igc.0.link_irq: 4 dev.igc.0.dropped: 0 dev.igc.0.eee_control: 1 dev.igc.0.itr: 488 dev.igc.0.tx_abs_int_delay: 66 dev.igc.0.rx_abs_int_delay: 66 dev.igc.0.tx_int_delay: 66 dev.igc.0.rx_int_delay: 0 dev.igc.0.rs_dump: 0 dev.igc.0.reg_dump: General Registers CTRL 181c0641 STATUS 40380683 CTRL_EXIT 10000040 Interrupt Registers ICR 00000000 RX Registers RCTL 0440801e RDLEN 00004000 RDH 00000000 RDT 00000080 RXDCTL 02040808 RDBAL 033a8000 RDBAH 00000001 TX Registers TCTL a503f0fa TDBAL 0336a000 TDBAH 00000001 TDLEN 00004000 TDH 00000029 TDT 00000029 TXDCTL 0201011f TDFH 00000000 TDFT 00000000 TDFHS 00000000 TDFPC 00000000 dev.igc.0.fc: 3 dev.igc.0.debug: -1 dev.igc.0.nvm: -1 dev.igc.0.iflib.rxq3.rxq_fl0.buf_size: 2048 dev.igc.0.iflib.rxq3.rxq_fl0.credits: 128 dev.igc.0.iflib.rxq3.rxq_fl0.cidx: 0 dev.igc.0.iflib.rxq3.rxq_fl0.pidx: 128 dev.igc.0.iflib.rxq2.rxq_fl0.buf_size: 2048 dev.igc.0.iflib.rxq2.rxq_fl0.credits: 128 dev.igc.0.iflib.rxq2.rxq_fl0.cidx: 0 dev.igc.0.iflib.rxq2.rxq_fl0.pidx: 128 dev.igc.0.iflib.rxq1.rxq_fl0.buf_size: 2048 dev.igc.0.iflib.rxq1.rxq_fl0.credits: 128 dev.igc.0.iflib.rxq1.rxq_fl0.cidx: 0 dev.igc.0.iflib.rxq1.rxq_fl0.pidx: 128 dev.igc.0.iflib.rxq0.rxq_fl0.buf_size: 2048 dev.igc.0.iflib.rxq0.rxq_fl0.credits: 128 dev.igc.0.iflib.rxq0.rxq_fl0.cidx: 0 dev.igc.0.iflib.rxq0.rxq_fl0.pidx: 128 dev.igc.0.iflib.txq3.r_abdications: 0 dev.igc.0.iflib.txq3.r_restarts: 0 dev.igc.0.iflib.txq3.r_stalls: 0 dev.igc.0.iflib.txq3.r_starts: 0 dev.igc.0.iflib.txq3.r_drops: 0 dev.igc.0.iflib.txq3.r_enqueues: 0 dev.igc.0.iflib.txq3.ring_state: pidx_head: 0000 pidx_tail: 0000 cidx: 0000 state: IDLE dev.igc.0.iflib.txq3.txq_cleaned: 0 dev.igc.0.iflib.txq3.txq_processed: 0 dev.igc.0.iflib.txq3.txq_in_use: 0 dev.igc.0.iflib.txq3.txq_cidx_processed: 0 dev.igc.0.iflib.txq3.txq_cidx: 0 dev.igc.0.iflib.txq3.txq_pidx: 0 dev.igc.0.iflib.txq3.no_tx_dma_setup: 0 dev.igc.0.iflib.txq3.txd_encap_efbig: 0 dev.igc.0.iflib.txq3.tx_map_failed: 0 dev.igc.0.iflib.txq3.no_desc_avail: 0 dev.igc.0.iflib.txq3.mbuf_defrag_failed: 0 dev.igc.0.iflib.txq3.m_pullups: 0 dev.igc.0.iflib.txq3.mbuf_defrag: 0 dev.igc.0.iflib.txq2.r_abdications: 0 dev.igc.0.iflib.txq2.r_restarts: 0 dev.igc.0.iflib.txq2.r_stalls: 0 dev.igc.0.iflib.txq2.r_starts: 0 dev.igc.0.iflib.txq2.r_drops: 0 dev.igc.0.iflib.txq2.r_enqueues: 0 dev.igc.0.iflib.txq2.ring_state: pidx_head: 0000 pidx_tail: 0000 cidx: 0000 state: IDLE dev.igc.0.iflib.txq2.txq_cleaned: 0 dev.igc.0.iflib.txq2.txq_processed: 0 dev.igc.0.iflib.txq2.txq_in_use: 0 dev.igc.0.iflib.txq2.txq_cidx_processed: 0 dev.igc.0.iflib.txq2.txq_cidx: 0 dev.igc.0.iflib.txq2.txq_pidx: 0 dev.igc.0.iflib.txq2.no_tx_dma_setup: 0 dev.igc.0.iflib.txq2.txd_encap_efbig: 0 dev.igc.0.iflib.txq2.tx_map_failed: 0 dev.igc.0.iflib.txq2.no_desc_avail: 0 dev.igc.0.iflib.txq2.mbuf_defrag_failed: 0 dev.igc.0.iflib.txq2.m_pullups: 0 dev.igc.0.iflib.txq2.mbuf_defrag: 0 dev.igc.0.iflib.txq1.r_abdications: 0 dev.igc.0.iflib.txq1.r_restarts: 0 dev.igc.0.iflib.txq1.r_stalls: 0 dev.igc.0.iflib.txq1.r_starts: 0 dev.igc.0.iflib.txq1.r_drops: 0 dev.igc.0.iflib.txq1.r_enqueues: 0 dev.igc.0.iflib.txq1.ring_state: pidx_head: 0000 pidx_tail: 0000 cidx: 0000 state: IDLE dev.igc.0.iflib.txq1.txq_cleaned: 0 dev.igc.0.iflib.txq1.txq_processed: 0 dev.igc.0.iflib.txq1.txq_in_use: 0 dev.igc.0.iflib.txq1.txq_cidx_processed: 0 dev.igc.0.iflib.txq1.txq_cidx: 0 dev.igc.0.iflib.txq1.txq_pidx: 0 dev.igc.0.iflib.txq1.no_tx_dma_setup: 0 dev.igc.0.iflib.txq1.txd_encap_efbig: 0 dev.igc.0.iflib.txq1.tx_map_failed: 0 dev.igc.0.iflib.txq1.no_desc_avail: 0 dev.igc.0.iflib.txq1.mbuf_defrag_failed: 0 dev.igc.0.iflib.txq1.m_pullups: 0 dev.igc.0.iflib.txq1.mbuf_defrag: 0 dev.igc.0.iflib.txq0.r_abdications: 0 dev.igc.0.iflib.txq0.r_restarts: 0 dev.igc.0.iflib.txq0.r_stalls: 0 dev.igc.0.iflib.txq0.r_starts: 41 dev.igc.0.iflib.txq0.r_drops: 0 dev.igc.0.iflib.txq0.r_enqueues: 41 dev.igc.0.iflib.txq0.ring_state: pidx_head: 0041 pidx_tail: 0041 cidx: 0041 state: IDLE dev.igc.0.iflib.txq0.txq_cleaned: 0 dev.igc.0.iflib.txq0.txq_processed: 40 dev.igc.0.iflib.txq0.txq_in_use: 41 dev.igc.0.iflib.txq0.txq_cidx_processed: 40 dev.igc.0.iflib.txq0.txq_cidx: 0 dev.igc.0.iflib.txq0.txq_pidx: 41 dev.igc.0.iflib.txq0.no_tx_dma_setup: 0 dev.igc.0.iflib.txq0.txd_encap_efbig: 0 dev.igc.0.iflib.txq0.tx_map_failed: 0 dev.igc.0.iflib.txq0.no_desc_avail: 0 dev.igc.0.iflib.txq0.mbuf_defrag_failed: 0 dev.igc.0.iflib.txq0.m_pullups: 0 dev.igc.0.iflib.txq0.mbuf_defrag: 0 dev.igc.0.iflib.override_nrxds: 0 dev.igc.0.iflib.override_ntxds: 0 dev.igc.0.iflib.separate_txrx: 0 dev.igc.0.iflib.core_offset: 0 dev.igc.0.iflib.tx_abdicate: 0 dev.igc.0.iflib.rx_budget: 0 dev.igc.0.iflib.disable_msix: 0 dev.igc.0.iflib.override_qs_enable: 0 dev.igc.0.iflib.override_nrxqs: 0 dev.igc.0.iflib.override_ntxqs: 0 dev.igc.0.iflib.driver_version: 1 dev.igc.0.%parent: pci4 dev.igc.0.%pnpinfo: vendor=0x8086 device=0x15f2 subvendor=0x1baa subdevice=0xc002 class=0x020000 dev.igc.0.%location: slot=0 function=0 dbsf=pci0:4:0:0 dev.igc.0.%driver: igc dev.igc.0.%desc: Intel(R) PRO/1000 PCI-Express Network Driver
-
It shows that at all link rates?
-
@stephenw10 said in Intel Ethernet Controller I225-LM Support?:
It shows that at all link rates?
Yes, at least for 10,100, and 1000 (both full and half duplex) it does. I don't have a 2500Base-T equipped device to test with yet. Note that ARPs transmitted from the I225-LM port to another device connected to the port are getting through to the device, but the responses back from the device do not appear to be making it back to the I225-LM as the ARP request (from the I225-LM) and reply (from the device) continuously repeat. Here is a sample from when attempting to ping the connected test device on 10.222.222.2 from pfSense:
test device capture
19:03:57.641021 1209 QNAP_64:ce:5b Broadcast ARP 60 Who has 10.222.222.2? Tell 10.222.222.1 19:03:57.641030 1210 SamsungE_9c:a0:8e QNAP_64:ce:5b ARP 42 10.222.222.2 is at 98:83:89:9c:a0:8e 19:03:58.651569 1211 QNAP_64:ce:5b Broadcast ARP 60 Who has 10.222.222.2? Tell 10.222.222.1 19:03:58.651594 1212 SamsungE_9c:a0:8e QNAP_64:ce:5b ARP 42 10.222.222.2 is at 98:83:89:9c:a0:8e 19:03:59.670915 1213 QNAP_64:ce:5b Broadcast ARP 60 Who has 10.222.222.2? Tell 10.222.222.1 19:03:59.670930 1214 SamsungE_9c:a0:8e QNAP_64:ce:5b ARP 42 10.222.222.2 is at 98:83:89:9c:a0:8e
pfSense capture
19:03:57.313905 ARP, Request who-has 10.222.222.2 tell 10.222.222.1, length 28 19:03:58.324154 ARP, Request who-has 10.222.222.2 tell 10.222.222.1, length 28 19:03:59.343768 ARP, Request who-has 10.222.222.2 tell 10.222.222.1, length 28
-
@stephenw10 said in Intel Ethernet Controller I225-LM Support?:
You can see the driver supported devices here:
https://github.com/pfsense/FreeBSD-src/blob/devel-12/sys/dev/igc/igc_hw.h#L44As far as I know though the only tested NIC is that in the 6100:
igc0@pci0:4:0:0: class=0x020000 card=0x00008086 chip=0x15f38086 rev=0x01 hdr=0x00 vendor = 'Intel Corporation' device = 'Ethernet Controller I225-V' class = network subclass = ethernet
Steve
@stephenw10 can you share the options that are enabled for the I225-V with the 6100 for reference?
-
Yup:
21.05-RELEASE][admin@6100-2.stevew.lan]/root: ifconfig -vvvm igc0 igc0: flags=8943<UP,BROADCAST,RUNNING,PROMISC,SIMPLEX,MULTICAST> metric 0 mtu 1500 description: LAN options=e120bb<RXCSUM,TXCSUM,VLAN_MTU,VLAN_HWTAGGING,JUMBO_MTU,VLAN_HWCSUM,WOL_MAGIC,VLAN_HWFILTER,RXCSUM_IPV6,TXCSUM_IPV6> capabilities=f53fbb<RXCSUM,TXCSUM,VLAN_MTU,VLAN_HWTAGGING,JUMBO_MTU,VLAN_HWCSUM,TSO4,TSO6,LRO,WOL_UCAST,WOL_MCAST,WOL_MAGIC,VLAN_HWFILTER,VLAN_HWTSO,NETMAP,RXCSUM_IPV6,TXCSUM_IPV6> ether 90:ec:77:0f:74:47 inet6 fe80::92ec:77ff:fe0f:7447%igc0 prefixlen 64 scopeid 0x1 inet6 fe80::1:1%igc0 prefixlen 64 scopeid 0x1 inet 192.168.170.1 netmask 0xffffff00 broadcast 192.168.170.255 inet 192.168.170.2 netmask 0xffffffff broadcast 192.168.170.2 inet 192.168.170.3 netmask 0xffffffff broadcast 192.168.170.3 inet 192.168.170.4 netmask 0xffffff00 broadcast 192.168.170.255 media: Ethernet autoselect status: no carrier supported media: media autoselect media 2500Base-T media 1000baseT media 1000baseT mediaopt full-duplex media 100baseTX mediaopt full-duplex media 100baseTX media 10baseT/UTP mediaopt full-duplex media 10baseT/UTP nd6 options=21<PERFORMNUD,AUTO_LINKLOCAL>
-
Thanks, I tried turning hardware checksum offloading back on again and enabled IPv6 to match as much of the 6100 config as possible, but am still seeing the same issue with the in error count increasing and no packets being successfully received by the I225-LM port:
[21.05-RELEASE][root@cerberus.setarcos.lan]/root: sysctl -a dev.igc.0 dev.igc.0.interrupts.rx_desc_min_thresh: 0 dev.igc.0.interrupts.asserts: 17 dev.igc.0.mac_stats.tso_txd: 0 dev.igc.0.mac_stats.tx_frames_1024_1522: 0 dev.igc.0.mac_stats.tx_frames_512_1023: 0 dev.igc.0.mac_stats.tx_frames_256_511: 0 dev.igc.0.mac_stats.tx_frames_128_255: 9 dev.igc.0.mac_stats.tx_frames_65_127: 3 dev.igc.0.mac_stats.tx_frames_64: 0 dev.igc.0.mac_stats.mcast_pkts_txd: 12 dev.igc.0.mac_stats.bcast_pkts_txd: 0 dev.igc.0.mac_stats.good_pkts_txd: 12 dev.igc.0.mac_stats.total_pkts_txd: 1510 dev.igc.0.mac_stats.good_octets_txd: 2088 dev.igc.0.mac_stats.good_octets_recvd: 28085 dev.igc.0.mac_stats.rx_frames_1024_1522: 0 dev.igc.0.mac_stats.rx_frames_512_1023: 0 dev.igc.0.mac_stats.rx_frames_256_511: 5 dev.igc.0.mac_stats.rx_frames_128_255: 20 dev.igc.0.mac_stats.rx_frames_65_127: 255 dev.igc.0.mac_stats.rx_frames_64: 15 dev.igc.0.mac_stats.mcast_pkts_recvd: 281 dev.igc.0.mac_stats.bcast_pkts_recvd: 14 dev.igc.0.mac_stats.good_pkts_recvd: 295 dev.igc.0.mac_stats.total_pkts_recvd: 1792 dev.igc.0.mac_stats.xoff_txd: 1498 dev.igc.0.mac_stats.xoff_recvd: 0 dev.igc.0.mac_stats.xon_txd: 0 dev.igc.0.mac_stats.xon_recvd: 0 dev.igc.0.mac_stats.alignment_errs: 0 dev.igc.0.mac_stats.crc_errs: 0 dev.igc.0.mac_stats.recv_errs: 0 dev.igc.0.mac_stats.recv_jabber: 0 dev.igc.0.mac_stats.recv_oversize: 0 dev.igc.0.mac_stats.recv_fragmented: 0 dev.igc.0.mac_stats.recv_undersize: 0 dev.igc.0.mac_stats.recv_no_buff: 0 dev.igc.0.mac_stats.missed_packets: 1497 dev.igc.0.mac_stats.defer_count: 0 dev.igc.0.mac_stats.sequence_errors: 0 dev.igc.0.mac_stats.symbol_errors: 0 dev.igc.0.mac_stats.collision_count: 0 dev.igc.0.mac_stats.late_coll: 0 dev.igc.0.mac_stats.multiple_coll: 0 dev.igc.0.mac_stats.single_coll: 0 dev.igc.0.mac_stats.excess_coll: 0 dev.igc.0.queue_rx_3.rx_irq: 0 dev.igc.0.queue_rx_3.rxd_tail: 128 dev.igc.0.queue_rx_3.rxd_head: 0 dev.igc.0.queue_rx_2.rx_irq: 0 dev.igc.0.queue_rx_2.rxd_tail: 128 dev.igc.0.queue_rx_2.rxd_head: 0 dev.igc.0.queue_rx_1.rx_irq: 0 dev.igc.0.queue_rx_1.rxd_tail: 128 dev.igc.0.queue_rx_1.rxd_head: 0 dev.igc.0.queue_rx_0.rx_irq: 0 dev.igc.0.queue_rx_0.rxd_tail: 128 dev.igc.0.queue_rx_0.rxd_head: 0 dev.igc.0.queue_tx_3.tx_irq: 0 dev.igc.0.queue_tx_3.txd_tail: 0 dev.igc.0.queue_tx_3.txd_head: 0 dev.igc.0.queue_tx_2.tx_irq: 0 dev.igc.0.queue_tx_2.txd_tail: 0 dev.igc.0.queue_tx_2.txd_head: 0 dev.igc.0.queue_tx_1.tx_irq: 0 dev.igc.0.queue_tx_1.txd_tail: 0 dev.igc.0.queue_tx_1.txd_head: 0 dev.igc.0.queue_tx_0.tx_irq: 0 dev.igc.0.queue_tx_0.txd_tail: 885 dev.igc.0.queue_tx_0.txd_head: 19 dev.igc.0.fc_low_water: 32752 dev.igc.0.fc_high_water: 32768 dev.igc.0.rx_control: 71335966 dev.igc.0.device_control: 404489793 dev.igc.0.watchdog_timeouts: 0 dev.igc.0.rx_overruns: 0 dev.igc.0.link_irq: 2 dev.igc.0.dropped: 0 dev.igc.0.eee_control: 1 dev.igc.0.itr: 488 dev.igc.0.tx_abs_int_delay: 66 dev.igc.0.rx_abs_int_delay: 66 dev.igc.0.tx_int_delay: 66 dev.igc.0.rx_int_delay: 0 dev.igc.0.rs_dump: 0 dev.igc.0.reg_dump: General Registers CTRL 181c0641 STATUS 40380683 CTRL_EXIT 10000040 Interrupt Registers ICR 00000000 RX Registers RCTL 0440801e RDLEN 00004000 RDH 00000000 RDT 00000080 RXDCTL 02040808 RDBAL 033a8000 RDBAH 00000001 TX Registers TCTL a503f0fa TDBAL 0336a000 TDBAH 00000001 TDLEN 00004000 TDH 00000013 TDT 00000375 TXDCTL 0201011f TDFH 00000000 TDFT 00000000 TDFHS 00000000 TDFPC 00000000 dev.igc.0.fc: 3 dev.igc.0.debug: -1 dev.igc.0.nvm: -1 dev.igc.0.iflib.rxq3.rxq_fl0.buf_size: 2048 dev.igc.0.iflib.rxq3.rxq_fl0.credits: 128 dev.igc.0.iflib.rxq3.rxq_fl0.cidx: 0 dev.igc.0.iflib.rxq3.rxq_fl0.pidx: 128 dev.igc.0.iflib.rxq2.rxq_fl0.buf_size: 2048 dev.igc.0.iflib.rxq2.rxq_fl0.credits: 128 dev.igc.0.iflib.rxq2.rxq_fl0.cidx: 0 dev.igc.0.iflib.rxq2.rxq_fl0.pidx: 128 dev.igc.0.iflib.rxq1.rxq_fl0.buf_size: 2048 dev.igc.0.iflib.rxq1.rxq_fl0.credits: 128 dev.igc.0.iflib.rxq1.rxq_fl0.cidx: 0 dev.igc.0.iflib.rxq1.rxq_fl0.pidx: 128 dev.igc.0.iflib.rxq0.rxq_fl0.buf_size: 2048 dev.igc.0.iflib.rxq0.rxq_fl0.credits: 128 dev.igc.0.iflib.rxq0.rxq_fl0.cidx: 0 dev.igc.0.iflib.rxq0.rxq_fl0.pidx: 128 dev.igc.0.iflib.txq3.r_abdications: 0 dev.igc.0.iflib.txq3.r_restarts: 0 dev.igc.0.iflib.txq3.r_stalls: 0 dev.igc.0.iflib.txq3.r_starts: 0 dev.igc.0.iflib.txq3.r_drops: 0 dev.igc.0.iflib.txq3.r_enqueues: 0 dev.igc.0.iflib.txq3.ring_state: pidx_head: 0000 pidx_tail: 0000 cidx: 0000 state: IDLE dev.igc.0.iflib.txq3.txq_cleaned: 0 dev.igc.0.iflib.txq3.txq_processed: 0 dev.igc.0.iflib.txq3.txq_in_use: 0 dev.igc.0.iflib.txq3.txq_cidx_processed: 0 dev.igc.0.iflib.txq3.txq_cidx: 0 dev.igc.0.iflib.txq3.txq_pidx: 0 dev.igc.0.iflib.txq3.no_tx_dma_setup: 0 dev.igc.0.iflib.txq3.txd_encap_efbig: 0 dev.igc.0.iflib.txq3.tx_map_failed: 0 dev.igc.0.iflib.txq3.no_desc_avail: 0 dev.igc.0.iflib.txq3.mbuf_defrag_failed: 0 dev.igc.0.iflib.txq3.m_pullups: 0 dev.igc.0.iflib.txq3.mbuf_defrag: 0 dev.igc.0.iflib.txq2.r_abdications: 0 dev.igc.0.iflib.txq2.r_restarts: 0 dev.igc.0.iflib.txq2.r_stalls: 0 dev.igc.0.iflib.txq2.r_starts: 0 dev.igc.0.iflib.txq2.r_drops: 0 dev.igc.0.iflib.txq2.r_enqueues: 0 dev.igc.0.iflib.txq2.ring_state: pidx_head: 0000 pidx_tail: 0000 cidx: 0000 state: IDLE dev.igc.0.iflib.txq2.txq_cleaned: 0 dev.igc.0.iflib.txq2.txq_processed: 0 dev.igc.0.iflib.txq2.txq_in_use: 0 dev.igc.0.iflib.txq2.txq_cidx_processed: 0 dev.igc.0.iflib.txq2.txq_cidx: 0 dev.igc.0.iflib.txq2.txq_pidx: 0 dev.igc.0.iflib.txq2.no_tx_dma_setup: 0 dev.igc.0.iflib.txq2.txd_encap_efbig: 0 dev.igc.0.iflib.txq2.tx_map_failed: 0 dev.igc.0.iflib.txq2.no_desc_avail: 0 dev.igc.0.iflib.txq2.mbuf_defrag_failed: 0 dev.igc.0.iflib.txq2.m_pullups: 0 dev.igc.0.iflib.txq2.mbuf_defrag: 0 dev.igc.0.iflib.txq1.r_abdications: 0 dev.igc.0.iflib.txq1.r_restarts: 0 dev.igc.0.iflib.txq1.r_stalls: 0 dev.igc.0.iflib.txq1.r_starts: 0 dev.igc.0.iflib.txq1.r_drops: 0 dev.igc.0.iflib.txq1.r_enqueues: 0 dev.igc.0.iflib.txq1.ring_state: pidx_head: 0000 pidx_tail: 0000 cidx: 0000 state: IDLE dev.igc.0.iflib.txq1.txq_cleaned: 0 dev.igc.0.iflib.txq1.txq_processed: 0 dev.igc.0.iflib.txq1.txq_in_use: 0 dev.igc.0.iflib.txq1.txq_cidx_processed: 0 dev.igc.0.iflib.txq1.txq_cidx: 0 dev.igc.0.iflib.txq1.txq_pidx: 0 dev.igc.0.iflib.txq1.no_tx_dma_setup: 0 dev.igc.0.iflib.txq1.txd_encap_efbig: 0 dev.igc.0.iflib.txq1.tx_map_failed: 0 dev.igc.0.iflib.txq1.no_desc_avail: 0 dev.igc.0.iflib.txq1.mbuf_defrag_failed: 0 dev.igc.0.iflib.txq1.m_pullups: 0 dev.igc.0.iflib.txq1.mbuf_defrag: 0 dev.igc.0.iflib.txq0.r_abdications: 0 dev.igc.0.iflib.txq0.r_restarts: 0 dev.igc.0.iflib.txq0.r_stalls: 0 dev.igc.0.iflib.txq0.r_starts: 11853 dev.igc.0.iflib.txq0.r_drops: 0 dev.igc.0.iflib.txq0.r_enqueues: 11853 dev.igc.0.iflib.txq0.ring_state: pidx_head: 1613 pidx_tail: 1613 cidx: 1613 state: IDLE dev.igc.0.iflib.txq0.txq_cleaned: 0 dev.igc.0.iflib.txq0.txq_processed: 17 dev.igc.0.iflib.txq0.txq_in_use: 902 dev.igc.0.iflib.txq0.txq_cidx_processed: 17 dev.igc.0.iflib.txq0.txq_cidx: 0 dev.igc.0.iflib.txq0.txq_pidx: 902 dev.igc.0.iflib.txq0.no_tx_dma_setup: 0 dev.igc.0.iflib.txq0.txd_encap_efbig: 0 dev.igc.0.iflib.txq0.tx_map_failed: 0 dev.igc.0.iflib.txq0.no_desc_avail: 0 dev.igc.0.iflib.txq0.mbuf_defrag_failed: 0 dev.igc.0.iflib.txq0.m_pullups: 232 dev.igc.0.iflib.txq0.mbuf_defrag: 0 dev.igc.0.iflib.override_nrxds: 0 dev.igc.0.iflib.override_ntxds: 0 dev.igc.0.iflib.separate_txrx: 0 dev.igc.0.iflib.core_offset: 0 dev.igc.0.iflib.tx_abdicate: 0 dev.igc.0.iflib.rx_budget: 0 dev.igc.0.iflib.disable_msix: 0 dev.igc.0.iflib.override_qs_enable: 0 dev.igc.0.iflib.override_nrxqs: 0 dev.igc.0.iflib.override_ntxqs: 0 dev.igc.0.iflib.driver_version: 1 dev.igc.0.%parent: pci4 dev.igc.0.%pnpinfo: vendor=0x8086 device=0x15f2 subvendor=0x1baa subdevice=0xc002 class=0x020000 dev.igc.0.%location: slot=0 function=0 dbsf=pci0:4:0:0 dev.igc.0.%driver: igc dev.igc.0.%desc: Intel(R) PRO/1000 PCI-Express Network Driver
igc0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500 description: Test options=e120bb<RXCSUM,TXCSUM,VLAN_MTU,VLAN_HWTAGGING,JUMBO_MTU,VLAN_HWCSUM,WOL_MAGIC,VLAN_HWFILTER,RXCSUM_IPV6,TXCSUM_IPV6> capabilities=f53fbb<RXCSUM,TXCSUM,VLAN_MTU,VLAN_HWTAGGING,JUMBO_MTU,VLAN_HWCSUM,TSO4,TSO6,LRO,WOL_UCAST,WOL_MCAST,WOL_MAGIC,VLAN_HWFILTER,VLAN_HWTSO,NETMAP,RXCSUM_IPV6,TXCSUM_IPV6> ether 24:5e:be:64:ce:5b inet6 fe80::265e:beff:fe64:ce5b%igc0 prefixlen 64 scopeid 0x1 inet6 fe80::1:1%igc0 prefixlen 64 scopeid 0x1 inet6 2601:646:8c00:a5b6:265e:beff:fe64:ce5b prefixlen 64 inet 10.222.222.1 netmask 0xffffff00 broadcast 10.222.222.255 media: Ethernet 1000baseT <full-duplex> status: active supported media: media autoselect media 2500Base-T media 1000baseT media 1000baseT mediaopt full-duplex media 100baseTX mediaopt full-duplex media 100baseTX media 10baseT/UTP mediaopt full-duplex media 10baseT/UTP nd6 options=21<PERFORMNUD,AUTO_LINKLOCAL>
Status up MAC Address 24:5e:be:64:ce:5b - Qnap Systems IPv4 Address 10.222.222.1 Subnet mask IPv4 255.255.255.0 IPv6 Link Local fe80::1:1%igc0 IPv6 Address 2601:646:8c00:a5b6:265e:beff:fe64:ce5b Subnet mask IPv6 64 MTU 1500 Media 1000baseT <full-duplex> In/out packets 0/444 (0 B/83 KiB) In/out packets (pass) 0/444 (0 B/83 KiB) In/out packets (block) 0/0 (0 B/0 B) In/out errors 1119/0 Collisions 0
Anything else you suggest I try?
-
You are talking about?:
dev.igc.0.mac_stats.missed_packets: 1497
That does seem high, especially as a percentage of the total packets received!
dev.igc.0.mac_stats.mcast_pkts_recvd: 281 dev.igc.0.mac_stats.bcast_pkts_recvd: 14 dev.igc.0.mac_stats.good_pkts_recvd: 295 dev.igc.0.mac_stats.total_pkts_recvd: 1792
For reference an active interface here looks like:
[21.05-RELEASE][admin@6100-2.stevew.lan]/root: sysctl dev.igc.3 dev.igc.3.wake: 0 dev.igc.3.interrupts.rx_desc_min_thresh: 0 dev.igc.3.interrupts.asserts: 1914725 dev.igc.3.mac_stats.tso_txd: 0 dev.igc.3.mac_stats.tx_frames_1024_1522: 0 dev.igc.3.mac_stats.tx_frames_512_1023: 181 dev.igc.3.mac_stats.tx_frames_256_511: 188 dev.igc.3.mac_stats.tx_frames_128_255: 77324 dev.igc.3.mac_stats.tx_frames_65_127: 1021428 dev.igc.3.mac_stats.tx_frames_64: 2589 dev.igc.3.mac_stats.mcast_pkts_txd: 23244 dev.igc.3.mac_stats.bcast_pkts_txd: 677 dev.igc.3.mac_stats.good_pkts_txd: 1101710 dev.igc.3.mac_stats.total_pkts_txd: 1101710 dev.igc.3.mac_stats.good_octets_txd: 118614362 dev.igc.3.mac_stats.good_octets_recvd: 37322978 dev.igc.3.mac_stats.rx_frames_1024_1522: 0 dev.igc.3.mac_stats.rx_frames_512_1023: 72 dev.igc.3.mac_stats.rx_frames_256_511: 2596 dev.igc.3.mac_stats.rx_frames_128_255: 37339 dev.igc.3.mac_stats.rx_frames_65_127: 3832 dev.igc.3.mac_stats.rx_frames_64: 486809 dev.igc.3.mac_stats.mcast_pkts_recvd: 18294 dev.igc.3.mac_stats.bcast_pkts_recvd: 2665 dev.igc.3.mac_stats.good_pkts_recvd: 530648 dev.igc.3.mac_stats.total_pkts_recvd: 497877 dev.igc.3.mac_stats.xoff_txd: 0 dev.igc.3.mac_stats.xoff_recvd: 0 dev.igc.3.mac_stats.xon_txd: 0 dev.igc.3.mac_stats.xon_recvd: 0 dev.igc.3.mac_stats.alignment_errs: 0 dev.igc.3.mac_stats.crc_errs: 0 dev.igc.3.mac_stats.recv_errs: 0 dev.igc.3.mac_stats.recv_jabber: 0 dev.igc.3.mac_stats.recv_oversize: 0 dev.igc.3.mac_stats.recv_fragmented: 0 dev.igc.3.mac_stats.recv_undersize: 0 dev.igc.3.mac_stats.recv_no_buff: 0 dev.igc.3.mac_stats.missed_packets: 0 dev.igc.3.mac_stats.defer_count: 0 dev.igc.3.mac_stats.sequence_errors: 0 dev.igc.3.mac_stats.symbol_errors: 0 dev.igc.3.mac_stats.collision_count: 0 dev.igc.3.mac_stats.late_coll: 0 dev.igc.3.mac_stats.multiple_coll: 0 dev.igc.3.mac_stats.single_coll: 0 dev.igc.3.mac_stats.excess_coll: 0 dev.igc.3.queue_rx_3.rx_irq: 0 dev.igc.3.queue_rx_3.rxd_tail: 226 dev.igc.3.queue_rx_3.rxd_head: 227 dev.igc.3.queue_rx_2.rx_irq: 0 dev.igc.3.queue_rx_2.rxd_tail: 19 dev.igc.3.queue_rx_2.rxd_head: 20 dev.igc.3.queue_rx_1.rx_irq: 0 dev.igc.3.queue_rx_1.rxd_tail: 978 dev.igc.3.queue_rx_1.rxd_head: 979 dev.igc.3.queue_rx_0.rx_irq: 0 dev.igc.3.queue_rx_0.rxd_tail: 13 dev.igc.3.queue_rx_0.rxd_head: 14 dev.igc.3.queue_tx_3.tx_irq: 0 dev.igc.3.queue_tx_3.txd_tail: 0 dev.igc.3.queue_tx_3.txd_head: 0 dev.igc.3.queue_tx_2.tx_irq: 0 dev.igc.3.queue_tx_2.txd_tail: 0 dev.igc.3.queue_tx_2.txd_head: 0 dev.igc.3.queue_tx_1.tx_irq: 0 dev.igc.3.queue_tx_1.txd_tail: 787 dev.igc.3.queue_tx_1.txd_head: 787 dev.igc.3.queue_tx_0.tx_irq: 0 dev.igc.3.queue_tx_0.txd_tail: 464 dev.igc.3.queue_tx_0.txd_head: 464 dev.igc.3.fc_low_water: 32752 dev.igc.3.fc_high_water: 32768 dev.igc.3.rx_control: 71598110 dev.igc.3.device_control: 1477707329 dev.igc.3.watchdog_timeouts: 0 dev.igc.3.rx_overruns: 0 dev.igc.3.link_irq: 195 dev.igc.3.dropped: 0 dev.igc.3.eee_control: 1 dev.igc.3.itr: 488 dev.igc.3.tx_abs_int_delay: 66 dev.igc.3.rx_abs_int_delay: 66 dev.igc.3.tx_int_delay: 66 dev.igc.3.rx_int_delay: 0 dev.igc.3.rs_dump: 0 dev.igc.3.reg_dump: General Registers CTRL 58140641 STATUS 40780683 CTRL_EXIT 10000040 Interrupt Registers ICR 00000000 RX Registers RCTL 0444801e RDLEN 00004000 RDH 0000000e RDT 0000000d RXDCTL 02040808 RDBAL 04a65000 RDBAH 00000000 TX Registers TCTL a503f0fa TDBAL 04a27000 TDBAH 00000000 TDLEN 00004000 TDH 000001d0 TDT 000001d0 TXDCTL 0201011f TDFH 00000000 TDFT 00000000 TDFHS 00000000 TDFPC 00000000 dev.igc.3.fc: 3 dev.igc.3.debug: -1 dev.igc.3.nvm: -1 dev.igc.3.iflib.rxq3.rxq_fl0.buf_size: 2048 dev.igc.3.iflib.rxq3.rxq_fl0.credits: 1023 dev.igc.3.iflib.rxq3.rxq_fl0.cidx: 227 dev.igc.3.iflib.rxq3.rxq_fl0.pidx: 226 dev.igc.3.iflib.rxq2.rxq_fl0.buf_size: 2048 dev.igc.3.iflib.rxq2.rxq_fl0.credits: 1023 dev.igc.3.iflib.rxq2.rxq_fl0.cidx: 20 dev.igc.3.iflib.rxq2.rxq_fl0.pidx: 19 dev.igc.3.iflib.rxq1.rxq_fl0.buf_size: 2048 dev.igc.3.iflib.rxq1.rxq_fl0.credits: 1023 dev.igc.3.iflib.rxq1.rxq_fl0.cidx: 979 dev.igc.3.iflib.rxq1.rxq_fl0.pidx: 978 dev.igc.3.iflib.rxq0.rxq_fl0.buf_size: 2048 dev.igc.3.iflib.rxq0.rxq_fl0.credits: 1023 dev.igc.3.iflib.rxq0.rxq_fl0.cidx: 14 dev.igc.3.iflib.rxq0.rxq_fl0.pidx: 13 dev.igc.3.iflib.txq3.r_abdications: 0 dev.igc.3.iflib.txq3.r_restarts: 0 dev.igc.3.iflib.txq3.r_stalls: 0 dev.igc.3.iflib.txq3.r_starts: 0 dev.igc.3.iflib.txq3.r_drops: 0 dev.igc.3.iflib.txq3.r_enqueues: 0 dev.igc.3.iflib.txq3.ring_state: pidx_head: 0000 pidx_tail: 0000 cidx: 0000 state: IDLE dev.igc.3.iflib.txq3.txq_cleaned: 0 dev.igc.3.iflib.txq3.txq_processed: 0 dev.igc.3.iflib.txq3.txq_in_use: 0 dev.igc.3.iflib.txq3.txq_cidx_processed: 0 dev.igc.3.iflib.txq3.txq_cidx: 0 dev.igc.3.iflib.txq3.txq_pidx: 0 dev.igc.3.iflib.txq3.no_tx_dma_setup: 0 dev.igc.3.iflib.txq3.txd_encap_efbig: 0 dev.igc.3.iflib.txq3.tx_map_failed: 0 dev.igc.3.iflib.txq3.no_desc_avail: 0 dev.igc.3.iflib.txq3.mbuf_defrag_failed: 0 dev.igc.3.iflib.txq3.m_pullups: 0 dev.igc.3.iflib.txq3.mbuf_defrag: 0 dev.igc.3.iflib.txq2.r_abdications: 0 dev.igc.3.iflib.txq2.r_restarts: 0 dev.igc.3.iflib.txq2.r_stalls: 0 dev.igc.3.iflib.txq2.r_starts: 0 dev.igc.3.iflib.txq2.r_drops: 0 dev.igc.3.iflib.txq2.r_enqueues: 0 dev.igc.3.iflib.txq2.ring_state: pidx_head: 0000 pidx_tail: 0000 cidx: 0000 state: IDLE dev.igc.3.iflib.txq2.txq_cleaned: 0 dev.igc.3.iflib.txq2.txq_processed: 0 dev.igc.3.iflib.txq2.txq_in_use: 0 dev.igc.3.iflib.txq2.txq_cidx_processed: 0 dev.igc.3.iflib.txq2.txq_cidx: 0 dev.igc.3.iflib.txq2.txq_pidx: 0 dev.igc.3.iflib.txq2.no_tx_dma_setup: 0 dev.igc.3.iflib.txq2.txd_encap_efbig: 0 dev.igc.3.iflib.txq2.tx_map_failed: 0 dev.igc.3.iflib.txq2.no_desc_avail: 0 dev.igc.3.iflib.txq2.mbuf_defrag_failed: 0 dev.igc.3.iflib.txq2.m_pullups: 0 dev.igc.3.iflib.txq2.mbuf_defrag: 0 dev.igc.3.iflib.txq1.r_abdications: 0 dev.igc.3.iflib.txq1.r_restarts: 0 dev.igc.3.iflib.txq1.r_stalls: 0 dev.igc.3.iflib.txq1.r_starts: 54154 dev.igc.3.iflib.txq1.r_drops: 0 dev.igc.3.iflib.txq1.r_enqueues: 54154 dev.igc.3.iflib.txq1.ring_state: pidx_head: 0906 pidx_tail: 0906 cidx: 0906 state: IDLE dev.igc.3.iflib.txq1.txq_cleaned: 108263 dev.igc.3.iflib.txq1.txq_processed: 108303 dev.igc.3.iflib.txq1.txq_in_use: 44 dev.igc.3.iflib.txq1.txq_cidx_processed: 783 dev.igc.3.iflib.txq1.txq_cidx: 743 dev.igc.3.iflib.txq1.txq_pidx: 787 dev.igc.3.iflib.txq1.no_tx_dma_setup: 0 dev.igc.3.iflib.txq1.txd_encap_efbig: 0 dev.igc.3.iflib.txq1.tx_map_failed: 0 dev.igc.3.iflib.txq1.no_desc_avail: 0 dev.igc.3.iflib.txq1.mbuf_defrag_failed: 0 dev.igc.3.iflib.txq1.m_pullups: 0 dev.igc.3.iflib.txq1.mbuf_defrag: 0 dev.igc.3.iflib.txq0.r_abdications: 0 dev.igc.3.iflib.txq0.r_restarts: 0 dev.igc.3.iflib.txq0.r_stalls: 0 dev.igc.3.iflib.txq0.r_starts: 1047555 dev.igc.3.iflib.txq0.r_drops: 0 dev.igc.3.iflib.txq0.r_enqueues: 1047558 dev.igc.3.iflib.txq0.ring_state: pidx_head: 1030 pidx_tail: 1030 cidx: 1030 state: IDLE dev.igc.3.iflib.txq0.txq_cleaned: 2069926 dev.igc.3.iflib.txq0.txq_processed: 2069966 dev.igc.3.iflib.txq0.txq_in_use: 42 dev.igc.3.iflib.txq0.txq_cidx_processed: 462 dev.igc.3.iflib.txq0.txq_cidx: 422 dev.igc.3.iflib.txq0.txq_pidx: 464 dev.igc.3.iflib.txq0.no_tx_dma_setup: 0 dev.igc.3.iflib.txq0.txd_encap_efbig: 0 dev.igc.3.iflib.txq0.tx_map_failed: 0 dev.igc.3.iflib.txq0.no_desc_avail: 0 dev.igc.3.iflib.txq0.mbuf_defrag_failed: 0 dev.igc.3.iflib.txq0.m_pullups: 31 dev.igc.3.iflib.txq0.mbuf_defrag: 0 dev.igc.3.iflib.override_nrxds: 0 dev.igc.3.iflib.override_ntxds: 0 dev.igc.3.iflib.separate_txrx: 0 dev.igc.3.iflib.core_offset: 12 dev.igc.3.iflib.tx_abdicate: 0 dev.igc.3.iflib.rx_budget: 0 dev.igc.3.iflib.disable_msix: 0 dev.igc.3.iflib.override_qs_enable: 0 dev.igc.3.iflib.override_nrxqs: 0 dev.igc.3.iflib.override_ntxqs: 0 dev.igc.3.iflib.driver_version: 1 dev.igc.3.%parent: pci7 dev.igc.3.%pnpinfo: vendor=0x8086 device=0x15f3 subvendor=0x8086 subdevice=0x0000 class=0x020000 dev.igc.3.%location: slot=0 function=0 dbsf=pci0:7:0:0 handle=\_SB_.PCI0.PEX6.PXSX dev.igc.3.%driver: igc dev.igc.3.%desc: Intel(R) PRO/1000 PCI-Express Network Driver
So it's a different device ID. The registers are set differently.
Steve
-
@stephenw10 said in Intel Ethernet Controller I225-LM Support?:
You are talking about?:
dev.igc.0.mac_stats.missed_packets: 1497
That does seem high, especially as a percentage of the total packets received!
dev.igc.0.mac_stats.mcast_pkts_recvd: 281 dev.igc.0.mac_stats.bcast_pkts_recvd: 14 dev.igc.0.mac_stats.good_pkts_recvd: 295 dev.igc.0.mac_stats.total_pkts_recvd: 1792
Yes, this is what I was referring to. The "in" packet count shows 0 on the UI though and I haven't managed to capture any inbound traffic on the I225-LM interface during testing. Note that the sysctl output and UI Status/Interfaces text capture for this interface (third text block from my previous reply) were taken a few minutes apart so the counters are not exactly the same.
dev.igc.3.reg_dump: General Registers CTRL 58140641 STATUS 40780683 CTRL_EXIT 10000040 Interrupt Registers ICR 00000000 RX Registers RCTL 0444801e RDLEN 00004000 RDH 0000000e RDT 0000000d RXDCTL 02040808 RDBAL 04a65000 RDBAH 00000000 TX Registers TCTL a503f0fa TDBAL 04a27000 TDBAH 00000000 TDLEN 00004000 TDH 000001d0 TDT 000001d0 TXDCTL 0201011f TDFH 00000000 TDFT 00000000 TDFHS 00000000 TDFPC 00000000 dev.igc.3.%pnpinfo: vendor=0x8086 device=0x15f3 subvendor=0x8086 subdevice=0x0000 class=0x020000 dev.igc.3.%location: slot=0 function=0 dbsf=pci0:7:0:0 handle=\_SB_.PCI0.PEX6.PXSX dev.igc.3.%driver: igc dev.igc.3.%desc: Intel(R) PRO/1000 PCI-Express Network Driver
So it's a different device ID. The registers are set differently.
Yes, but isn't the device ID difference to be expected? The I225-LM and I225-V have different IDs (0x15F2 and 0x15F3 respectively per https://github.com/pfsense/FreeBSD-src/blob/devel-12/sys/dev/igc/igc_hw.h#L44) Are there any pertinent differences in the registers between the two?
dev.igc.0.reg_dump: General Registers CTRL 181c0641 STATUS 40380683 CTRL_EXIT 10000040 Interrupt Registers ICR 00000000 RX Registers RCTL 0440801e RDLEN 00004000 RDH 00000000 RDT 00000080 RXDCTL 02040808 RDBAL 033a8000 RDBAH 00000001 TX Registers TCTL a503f0fa TDBAL 0336a000 TDBAH 00000001 TDLEN 00004000 TDH 00000013 TDT 00000375 TXDCTL 0201011f TDFH 00000000 TDFT 00000000 TDFHS 00000000 TDFPC 00000000 dev.igc.0.%pnpinfo: vendor=0x8086 device=0x15f2 subvendor=0x1baa subdevice=0xc002 class=0x020000 dev.igc.0.%location: slot=0 function=0 dbsf=pci0:4:0:0 dev.igc.0.%driver: igc dev.igc.0.%desc: Intel(R) PRO/1000 PCI-Express Network Driver
-
@setarcos said in Intel Ethernet Controller I225-LM Support?:
Yes, but isn't the device ID difference to be expected?
Yes it is. I'm just saying it's different to the NIC in the 6100 so it may not have been tested.
Are there any pertinent differences in the registers between the two?
I don't know. The spec sheets don't look significantly different though.
-
Does your 6100 have any igc driver tunables set? Here is what I am currently using (defaults):
[21.05-RELEASE][root@cerberus.setarcos.lan]/root: sysctl -a hw.igc hw.igc.max_interrupt_rate: 8000 hw.igc.eee_setting: 1 hw.igc.rx_process_limit: 100 hw.igc.sbp: 1 hw.igc.smart_pwr_down: 0 hw.igc.rx_abs_int_delay: 66 hw.igc.tx_abs_int_delay: 66 hw.igc.rx_int_delay: 0 hw.igc.tx_int_delay: 66 hw.igc.disable_crc_stripping: 0
I have a 2.5Gbe device on the way and will be able to test with that shortly, but have otherwise run out of things to try.