HomeFreeBSD

e1000: Fix up HW vlan ops

Description

e1000: Fix up HW vlan ops

  • Don't reset the entire adapter for vlan changes, fix up the problems
  • Add some functions for vlan filter (vfta) manipulation
  • Don't muck with the vfta if we aren't doing HW vlan filtering
  • Disable interrupts when manipulating vfta on lem(4)-class NICs
  • On the I350 there is a specification update (2.4.20) in which the

suggested workaround is to write to the vfta 10 times (if at first you
don't succeed, try, try again). Our shared code has the goods, use it

  • Increase a VF's frame receive size in the case of vlans

From the referenced PR, this reduced vlan configuration from minutes
to seconds with hundreds or thousands of vlans and prevents wedging the
adapter with needless adapter reinitialization for each vlan ID.

PR: 230996
Reviewed by: markj
Tested by: Ozkan KIRIK <ozkan.kirik@gmail.com>
MFC after: 2 weeks
Differential Revision: https://reviews.freebsd.org/D30002

Details

Provenance
Kevin Bowling <kbowling@FreeBSD.org>Authored on Sep 15 2021, 2:47 PM
Reviewer
markj
Differential Revision
D30002: e1000: Fix up HW vlan ops
Parents
rGb51f8bae570b: [fib algo][dxr] Optimize trie updating.
Branches
Unknown
Tags
Unknown