STRUCT EFX_NEIGH_BINDER(9)
π NAME π
struct efx_neigh_binder β driver state for a neighbour entry
okay so bestie, welcome to the Kernel API Manual, section 9 β this page is all about struct efx_neigh_binder, and we're gonna make it make sense π
β¨ SYNOPSIS β¨
struct efx_neigh_binder {
struct net *net;
__be32 dst_ip;
struct in6_addr dst_ip6;
char ha[ETH_ALEN];
bool n_valid;
rwlock_t lock;
u8 ttl;
bool dying;
struct net_device *egdev;
netdevice_tracker dev_tracker;
netns_tracker ns_tracker;
refcount_t ref;
unsigned long used;
struct list_head users;
struct rhash_head linkage;
struct work_struct work;
struct efx_nic *efx;
};
π«Ά Members π«Ά
netβ the network namespace in which this neigh residesdst_ipβ the IPv4 destination address resolved by this neighdst_ip6β the IPv6 destination address resolved by this neighhaβ the hardware (Ethernet) address of the neighbourn_validβ true if the neighbour is inNUD_VALIDstatelockβ protectshaandn_validttlβ Time To Live associated with the route useddyingβ set whenegdevis going away, to skip further updatesegdevβ egress device from the route lookup. Holds a reference (yes, that's literally the whole sentence β don't @ me π)dev_trackerβ reference tracker entry foregdevns_trackerβ reference tracker entry fornsrefβ counts encap actions referencing this entryusedβ jiffies of last time traffic hit any encap action using this. When counter reads update this, a new neighbour event is sent to indicate that the neighbour entry is still in use.usersβ list ofstruct efx_tc_encap_actionlinkageβ entry inefx->neigh_ht(keys arenet,dst_ip,dst_ip6).workβ processes neighbour state changes, updates the encap actionsefxβ owning NIC instance.
πΈ DESCRIPTION πΈ
okay so picture this: struct efx_neigh_binder associates a neighbour entry with the encap actions that are interested in it, and that lets the latter get updated when the neighbour details change. That's the whole vibe. Whichever of dst_ip and dst_ip6 is not in use will be all-zeroes β and this distinguishes IPv4 from IPv6 entries. no cap, that all-zeroes check is the IPv4/IPv6 vibe check π¦
π₯ SEE ALSO π₯
go peek at the kernel file: ./drivers/net/ethernet/sfc/tc_encap_actions.h
made with π from source/version ./drivers/net/ethernet/sfc, dated October 2026, for struct efx_neigh_binder(9) β bye bestie π«Ά
π¦ where this page comes from
- nixpkgs unstable: linux-manual 7.3.1
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms