i40e_veb_setup(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’… i40e_veb_setup πŸ’…

okay so bestie, we're reading the Kernel API Manual entry for i40e_veb_setup(9) today and honestly? it's short, it's sweet, it's giving "tiny function, big responsibilities." let's get into it 🫢


✨ NAME ✨

i40e_veb_setup β€” set up a VEB. literally the whole tagline. no notes, iconic behavior πŸ’–


πŸŽ€ SYNOPSIS πŸŽ€

struct i40e_veb * i40e_veb_setup (struct i40e_pf *pf , u16 uplink_seid ,
u16 vsi_seid , u8 enabled_tc );

yes queen, she returns a struct i40e_veb * and takes four whole arguments. main character energy fr ✨


🌸 ARGUMENTS 🌸

  • pf β€” the board private structure. it's the whole party's context, your home base 🏠
  • uplink_seid β€” the switch element to link to. think of it as where this VEB gets attached in the switch ✨
  • vsi_seid β€” the initial VSI seid, aka the VSI she starts out hanging with πŸ’œ
  • enabled_tc β€” the Enabled TC bit-map. a bit-map, so it's doing bit-map things πŸ”₯

πŸ¦‹ DESCRIPTION πŸ¦‹

so here's the tea 🍡 β€” this allocates the sw VEB structure and links it into the switch. that's the whole job, and she does it.

and listen, it is possible and legal for this to be a duplicate of an already existing VEB. not a bug, not a scandal, just vibes πŸ’…

it's also possible for both uplink and vsi seids to be zero, in order to create a floating VEB. floating!! no anchor, just ✨ existing ✨, iykyk πŸ¦‹

returns pointer to the successfully allocated VEB sw struct on success, otherwise returns NULL on failure. so like… always check your return value, bestie, do not skip the vibe check 😭


⭐ SEE ALSO ⭐

first up, the kernel file we're living in:

  • Kernel file ./drivers/net/ethernet/intel/i40e/i40e_main.c

and now… the entire extended family. every single one, in order, no skips, no cuts πŸ‘‘:

like, the whole squad showed up πŸ˜­πŸ’€ every single one is here, i checked twice, no cap πŸ‘‘


🌈 the sign-off 🌈

that's the page bestie!! source is ./drivers/net/ethernet/intel/i40e, dated October 2026, and the page is β€” say it with me β€” i40e_veb_setup(9) πŸ’–βœ¨πŸŽ€ go allocate something safely, and remember: floating VEBs are valid and so are you πŸ¦‹πŸ’œ

πŸ“¦ where this page comes from