ice_vc_ena_vlan_offload(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’… ice_vc_ena_vlan_offload(9) β€” the kernel API manual, bestie edition πŸŽ€

okay so real talk, this page lives in the Kernel API Manual, and the function's whole name is ice_vc_ena_vlan_offload. Say it three times fast, I dare you. It's the little helper that turns VLAN offload on, and it decides what to turn on based on the ethertype_setting you hand it. Slay.


✨ NAME ✨

ice_vc_ena_vlan_offload β€” enable VLAN offload based on the ethertype_setting πŸ’–

Like… that's literally the job. It enables VLAN offload, and the flavor of offload is chosen by ethertype_setting. No cap.


🌸 SYNOPSIS 🌸

int ice_vc_ena_vlan_offload (struct ice_vsi *vsi , int
(*ena_offload)(struct ice_vsi *vsi, u16 tpid) , u32 ethertype_setting );

Look at that signature. Three arguments, one int coming back at you. Iconic.


πŸ¦‹ ARGUMENTS πŸ¦‹

  • vsi β€” the VF's VSI, and it's the thing we use to enable the VLAN offload. Your main character struct, basically πŸ‘‘
  • ena_offload β€” the function used to enable the VLAN offload. It's a function pointer, bestie: int (*ena_offload)(struct ice_vsi *vsi, u16 tpid). So you're passing in the enabler. Very meta of you 🫢
  • ethertype_setting β€” a u32 stuffed with VIRTCHNL_VLAN_ETHERTYPE_* values, which say which offloads to enable. Like a lil menu of offloads and you're picking off it πŸ“

πŸ”₯ SEE ALSO πŸ”₯

The whole friend group, fr fr. Go say hi:

Also the source file it actually lives in, no biggie:

Kernel file ./drivers/net/ethernet/intel/ice/virt/virtchnl.c


ngl bestie, that SEE ALSO list is a whole friend group chat and you're expected to know every single one of them. iykyk πŸ’€

and that's the page!! πŸ’œ source is ./drivers/net/ethernet/intel/i... (the path got cut off in the footer, we don't gatekeep, we just vibe), dated October 2026, and this whole thing is ice_vc_ena_vlan_offload(9). go enable some offloads, periodt βœ¨πŸŒˆπŸ¦‹

πŸ“¦ where this page comes from