[Bug 260468] Disabling igb vlanhwfilter accepted but not applied

From: <bugzilla-noreply_at_freebsd.org>
Date: Thu, 16 Dec 2021 11:54:47 UTC
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=260468

            Bug ID: 260468
           Summary: Disabling igb vlanhwfilter accepted but not applied
           Product: Base System
           Version: 12.3-RELEASE
          Hardware: amd64
                OS: Any
            Status: New
          Severity: Affects Some People
          Priority: ---
         Component: kern
          Assignee: bugs@FreeBSD.org
          Reporter: 606u@dir.bg

Disabling VLAN hardware filter (vlanhwfilter) with ifconfig(8) is accepted and
VLAN_HWFILTER option disappears from the network interface, however tagged
frames for VLANs not explicitly created on this interface are silently dropped
and do not appear in tcpdump(1).

Example:

### Nothing outputted with zero VLANs on igb1 (including VLAN 200):
# tcpdump -penvi igb1 vlan

### Tagged frames for VLAN 200 visible after igb1.200 create:
# ifconfig igb1.200 create
# tcpdump -penvi igb1 vlan

### Tagged frames for VLAN 200 no-longer visible after igb1.200 destroy:
# ifconfig igb1.200 destroy
# tcpdump -penvi igb1 vlan

### ifconfig changes nothing, no tagged frames unless VLAN is created:
# ifconfig igb1 -vlanhwtag -vlanhwcsum -vlanhwhwtso -vlanhwcsso
igb1: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500
       
options=e0272b<RXCSUM,TXCSUM,VLAN_MTU,JUMBO_MTU,TSO4,TSO6,LRO,WOL_MAGIC,RXCSUM_IPV6,TXCSUM_IPV6>
        ...
# tcpdump -penvi igb1 vlan

# pciconf -lvcb igb1
igb1@pci0:1:0:1:        class=0x020000 card=0x010015d9 chip=0x10c98086 rev=0x01
hdr=0x00
    vendor     = 'Intel Corporation'
    device     = '82576 Gigabit Network Connection'
    class      = network
    subclass   = ethernet
    bar   [10] = type Memory, range 32, base 0xfbb60000, size 131072, enabled
    bar   [14] = type Memory, range 32, base 0xfbb40000, size 131072, enabled
    bar   [18] = type I/O Port, range 32, base 0xd880, size 32, enabled
    bar   [1c] = type Memory, range 32, base 0xfbb1c000, 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 2.5(2.5) ASPM disabled(L0s/L1)
    ecap 0001[100] = AER 1 0 fatal 0 non-fatal 1 corrected
    ecap 0003[140] = Serial 1 002590ffff******
    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 0x0180, VF RID Stride 0x0002
                     VF Device ID 0x10ca
                     Page Sizes: 4096 (enabled), 8192, 65536, 262144, 1048576,
4194304

Working correctly on FreeBSD 12.2-RELEASE.
(Speculation!!!) Maybe related to Intel e1000 drivers version bump -- "August
7, 2019" for 12.3-RELEASE, "May 30, 2007" for 12.2-RELEASE and 13.0-RELEASE.

-- 
You are receiving this mail because:
You are the assignee for the bug.