ENUM EFX_TC_EM_PSEUDO_TYPE(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’– enum efx_tc_em_pseudo_type(9) πŸ’–

okay bestie, welcome to the Kernel API Manual ✨ this one is a lil enum from the sfc driver and it's lowkey the glue that keeps your encap matches from stepping on each other. let's get into it 🫢


🌸 NAME 🌸

enum efx_tc_em_pseudo_type β€” the pseudo type of a &struct efx_tc_encap_match, iykyk πŸ’…


✨ SYNOPSIS ✨

enum efx_tc_em_pseudo_type {
    EFX_TC_EM_DIRECT ,
    EFX_TC_EM_PSEUDO_MASK ,
    EFX_TC_EM_PSEUDO_OR

};

πŸŽ€ Constants πŸŽ€

three constants, no more no less, and each one is a whole personality πŸ”₯

  • EFX_TC_EM_DIRECT β€” this one is the real deal: an actual HW entry in the Outer Rule table, not a pseudo. so the hardware index sitting in struct efx_tc_encap_match.fw_id is valid πŸ‘‘ no cap.
  • EFX_TC_EM_PSEUDO_MASK β€” registered by an encap match that includes a match on an optional field (currently ip_tos and/or udp_sport), and its whole job is to prevent an overlapping encap match _without_ optional fields 😀 it's giving bouncer at the club fr fr. here's the tea tho: the pseudo encap match may be referenced again by an encap match with different values for these fields β€” but all masks must match the first (stored in our child_* fields). periodt πŸ’…
  • EFX_TC_EM_PSEUDO_OR β€” registered by an fLHS rule that fits in the OR table 🌈 the struct efx_tc_lhs_rule already holds the HW OR entry, so that's handled. and heads up: only one reference to this encap match may exist 🚨 like, one (1) singular reference. don't be greedy.

πŸ¦‹ Description πŸ¦‹

so what are these even for? they're used to classify "pseudo" encap matches β€” and a pseudo encap match is one that doesn't refer to an entry in hardware. instead, it indicates that a section of the match space is in use by another Outer Rule. it's not a real HW entry, it's a little sign that says "occupied bestie, move along" πŸ™ˆβœ¨


πŸ” SEE ALSO πŸ”

  • Kernel file ./drivers/net/ethernet/sfc/tc.h
  • struct efx_tc_mac_pedit_action(9)
  • struct efx_tc_action_set(9)
  • struct efx_tc_state(9)

and that's the whole page, bestie!! πŸŽ€ this icon came to you from ./drivers/net/ethernet/sfc and it's stamped October 2026 β€” go forth and pseudo-match responsibly πŸ’œπŸ¦‹

πŸ“¦ where this page comes from