Bug 231476

Summary: igb I210 can not turn on TSO6
Product: Base System Reporter: Lev A. Serebryakov <lev>
Component: kernAssignee: freebsd-net (Nobody) <net>
Status: Closed FIXED    
Severity: Affects Only Me CC: sbruno, shurd
Priority: --- Keywords: IntelNetworking, regression
Version: CURRENT   
Hardware: Any   
OS: Any   
Attachments:
Description Flags
Add ICAP_TSO6 capability for igb none

Description Lev A. Serebryakov freebsd_committer freebsd_triage 2018-09-19 12:32:58 UTC
FreeBSD 11-STABLE:

# pciconf -lv igb0
igb0@pci0:5:0:0:        class=0x020000 card=0x153315d9 chip=0x15338086 rev=0x03 hdr=0x00
    vendor     = 'Intel Corporation'
    device     = 'I210 Gigabit Network Connection'
    class      = network
    subclass   = ethernet
# ifconfig igb0 | grep options
        options=6403bb<RXCSUM,TXCSUM,VLAN_MTU,VLAN_HWTAGGING,JUMBO_MTU,VLAN_HWCSUM,TSO4,TSO6,VLAN_HWTSO,RXCSUM_IPV6,TXCSUM_IPV6>
        nd6 options=23<PERFORMNUD,ACCEPT_RTADV,AUTO_LINKLOCAL>
#

FreeBSD 12-ALPHA6 (chips are essentially the same, one is flash- and other is flash-less)

# pciconf -lv igb0
igb0@pci0:1:0:0:        class=0x020000 card=0x00008086 chip=0x157b8086 rev=0x03 hdr=0x00
    vendor     = 'Intel Corporation'
    device     = 'I210 Gigabit Network Connection'
    class      = network
    subclass   = ethernet
# ifconfig igb0 | grep options
        options=e505bb<RXCSUM,TXCSUM,VLAN_MTU,VLAN_HWTAGGING,JUMBO_MTU,VLAN_HWCSUM,TSO4,LRO,VLAN_HWFILTER,VLAN_HWTSO,RXCSUM_IPV6,TXCSUM_IPV6>
        nd6 options=23<PERFORMNUD,ACCEPT_RTADV,AUTO_LINKLOCAL>
# ifconfig igb0 tso6
# ifconfig igb0 | grep options
        options=e505bb<RXCSUM,TXCSUM,VLAN_MTU,VLAN_HWTAGGING,JUMBO_MTU,VLAN_HWCSUM,TSO4,LRO,VLAN_HWFILTER,VLAN_HWTSO,RXCSUM_IPV6,TXCSUM_IPV6>
        nd6 options=23<PERFORMNUD,ACCEPT_RTADV,AUTO_LINKLOCAL>
#
Comment 1 Stephen Hurd freebsd_committer freebsd_triage 2018-09-19 15:57:31 UTC
Created attachment 197235 [details]
Add ICAP_TSO6 capability for igb

It looks like this capability got dropped.  Can you try with the attached patch?
Comment 2 Lev A. Serebryakov freebsd_committer freebsd_triage 2018-09-19 20:17:56 UTC
(In reply to Stephen Hurd from comment #1)
Patch worked, but I can not prove, that option is really working (in hardware) as event without option perf3 flat-outs at 990Mbit/s :-)
Comment 3 commit-hook freebsd_committer freebsd_triage 2018-09-20 20:06:59 UTC
A commit references this bug:

Author: shurd
Date: Thu Sep 20 20:06:45 UTC 2018
New revision: 338840
URL: https://svnweb.freebsd.org/changeset/base/338840

Log:
  Add IFCAP_TSO6 for igb

  It seems igb supports TSO6, but the capability got lost in
  the iflib update. Restore this capability.

  PR:		231476
  Reported by:	lev
  Reviewed by:	erj
  Approved by:	re (gjb)
  Sponsored by:	Limelight Networks
  Differential Revision:	https://reviews.freebsd.org/D17242

Changes:
  head/sys/dev/e1000/if_em.c
Comment 4 Stephen Hurd freebsd_committer freebsd_triage 2018-10-01 14:16:42 UTC
Fixed in r338840

Thanks for the report!