Page MenuHomeFreeBSD

sfxge(4): split EFX_FILTER_MATCH_LOC_MAC_IG back into separate flags
ClosedPublic

Authored by arybchik on Dec 28 2016, 4:14 PM.
Tags
None
Referenced Files
Unknown Object (File)
Sat, Nov 16, 7:22 PM
Unknown Object (File)
Sat, Nov 16, 10:38 AM
Unknown Object (File)
Sat, Nov 2, 3:56 AM
Unknown Object (File)
Thu, Oct 24, 9:45 PM
Unknown Object (File)
Oct 17 2024, 8:07 AM
Unknown Object (File)
Sep 22 2024, 2:14 PM
Unknown Object (File)
Sep 21 2024, 8:24 AM
Unknown Object (File)
Sep 18 2024, 3:15 AM
Subscribers

Details

Summary

The flag EFX_FILTER_MATCH_LOC_MAC_IG to represent filtering on the
individual/group bit of the MAC address (with the two cases being
distingusished by the MAC address in the filter specification) was
introduced to mirror the Linux driver filtering code, but the
implementations are different enough anyway that it isn't of much value.

Having separate flags for unknown unicast and multicast simplifies
the code and allows the set of flags to match those used by MCDI.

It will also makes it easier to report whether these filters are
supported.

In the MCDI definitions, the unknown multicast and unicast flags have
the values 0x40000000 and 0x80000000 respectively, and so using the
same values for simplicity requires 32 bits in the filter specification
to store the flags. This means the structure is now a little bigger
than 64 bytes, but filters are not often used on critical paths so this
shouldn't have much impact - on Linux they are also bigger than they
used to be.

Submitted by: Mark Spender <mspender at solarflare.com>
Sponsored by: Solarflare Communications, Inc.
MFC after: 1 week

Test Plan

amd64 kernels tinderbox build tested
module loaded, interface up, traffic works fine
promiscuous mode works fine

Diff Detail

Repository
rS FreeBSD src repository - subversion
Lint
Lint Not Applicable
Unit
Tests Not Applicable

Event Timeline

arybchik retitled this revision from to sfxge(4): split EFX_FILTER_MATCH_LOC_MAC_IG back into separate flags.
arybchik updated this object.
arybchik edited the test plan for this revision. (Show Details)
arybchik added reviewers: gnn, philip, np, bz.
gnn edited edge metadata.
This revision is now accepted and ready to land.Dec 28 2016, 4:45 PM
This revision was automatically updated to reflect the committed changes.