ENUM EFX_FILTER_MATCH_FLAGS(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’… enum efx_filter_match_flags(9) β€” the group-chat guide

okay so listen bestie, this is a page straight out of the Kernel API Manual for enum efx_filter_match_flags, and honestly? it's giving "choose your own adventure but make it network hardware." it's the flags you use to tell the hardware what to actually match on when it filters packets. iconic behavior, no cap.


✨ NAME ✨

enum efx_filter_match_flags β€” literally the flags that pick the hardware filter match type πŸŽ€


🌸 SYNOPSIS 🌸

enum efx_filter_match_flags {
    EFX_FILTER_MATCH_REM_HOST ,
    EFX_FILTER_MATCH_LOC_HOST ,
    EFX_FILTER_MATCH_REM_MAC ,
    EFX_FILTER_MATCH_REM_PORT ,
    EFX_FILTER_MATCH_LOC_MAC ,
    EFX_FILTER_MATCH_LOC_PORT ,
    EFX_FILTER_MATCH_ETHER_TYPE ,
    EFX_FILTER_MATCH_INNER_VID ,
    EFX_FILTER_MATCH_OUTER_VID ,
    EFX_FILTER_MATCH_IP_PROTO ,
    EFX_FILTER_MATCH_LOC_MAC_IG ,
    EFX_FILTER_MATCH_ENCAP_TYPE

};

(those trailing commas and that lonely blank line before the };? that's canon, bestie, keep it exactly like that 🫢)


πŸ¦‹ Constants πŸ¦‹

the whole squad, one by one:

  • EFX_FILTER_MATCH_REM_HOST β€” match by the remote IP host address, slay
  • EFX_FILTER_MATCH_LOC_HOST β€” match by the local IP host address
  • EFX_FILTER_MATCH_REM_MAC β€” match by the remote MAC address πŸ’…
  • EFX_FILTER_MATCH_REM_PORT β€” match by the remote TCP/UDP port
  • EFX_FILTER_MATCH_LOC_MAC β€” match by the local MAC address
  • EFX_FILTER_MATCH_LOC_PORT β€” match by the local TCP/UDP port
  • EFX_FILTER_MATCH_ETHER_TYPE β€” match by Ether-type, periodt
  • EFX_FILTER_MATCH_INNER_VID β€” match by inner VLAN ID
  • EFX_FILTER_MATCH_OUTER_VID β€” match by outer VLAN ID
  • EFX_FILTER_MATCH_IP_PROTO β€” match by IP transport protocol
  • EFX_FILTER_MATCH_LOC_MAC_IG β€” match by local MAC address I/G bit. (yes, with the period, it's cute)
  • EFX_FILTER_MATCH_ENCAP_TYPE β€” match by encapsulation type. Used for RX default unicast and multicast/broadcast filters πŸ”₯

πŸ‘‘ Description πŸ‘‘

okay so here's the tea: only some combinations are supported, and it all depends on your NIC type. vibe check by card:

  • Falcon supports RX filters matching by {TCP,UDP}/IPv4 4-tuple or local 2-tuple (only implemented for Falcon B0) πŸ¦… β€” yeah, B0 only, that's the whole sentence, don't come for me
  • Siena supports RX and TX filters matching by {TCP,UDP}/IPv4 4-tuple or local 2-tuple, or local MAC with or without outer VID, and RX default filters ✨
  • Huntington supports filter matching controlled by firmware, potentially using {TCP,UDP}/IPv{4,6} 4-tuple or local 2-tuple, local MAC or I/G bit, with or without outer and inner VID 🌈
ngl the Huntington one is doing the most β€” "controlled by firmware, potentially using…" is highkey a whole mood. it's the main character of match combos πŸ’€

πŸ’– SEE ALSO πŸ’–

the required reading, iykyk:


and that's the whole page, bestie 🫢 this lil gem lives in ./drivers/net/ethernet/sfc/siena, dated October 2026, and it's filed under enum efx_filter_match_flags(9) β€” go forth and filter responsibly πŸ’œβœ¨

πŸ“¦ where this page comes from