skb_mac_gso_segment(9)
π skb_mac_gso_segment(9) π
okay so bestie, we're diving into the Kernel API Manual today β yes, that one β and the star of the show is skb_mac_gso_segment. it's the mac layer segmentation handler, and it's giving very much "i handle the plumbing so you don't have to" energy. let's get into it π«Ά
β¨ NAME β¨
skb_mac_gso_segment β the mac layer segmentation handler, periodt. that's the whole vibe. it segments stuff at the mac layer and it does it iconically π
πΈ SYNOPSIS πΈ
struct sk_buff * skb_mac_gso_segment (struct sk_buff *skb ,
netdev_features_t features );
like. look at that signature. struct sk_buff * going in, struct sk_buff * coming out, and a netdev_features_t riding along in the middle. main character function fr fr π₯
π ARGUMENTS π
skbβ the buffer to segment. this is the actual thing being chopped up, no cap. it's the whole reason we're here πfeaturesβ the features for the output path (seedev->features). yes, thatdev->features. go look at it, iykyk π
π¦ SEE ALSO π¦
bestie, the lore goes deep. check the kernel file ./net/core/gso.c and then go meet the whole friend group:
skb_eth_gso_segment(9)__skb_gso_segment(9)skb_gso_transport_seglen(9)skb_gso_network_seglen(9)skb_gso_mac_seglen(9)skb_gso_size_check(9)skb_gso_validate_network_len(9)skb_gso_validate_mac_len(9)
that's the entire squad and honestly? every single one of them ate πβ
ngl, this page is short and sweet, but don't let the length fool you β the seg functions are a whole ecosystem and you will be seeing them again π
and that's a wrap, bestie π this lil page lives in ./net/core, dated October 2026, and it's filed under skb_mac_gso_segment(9) β mwah, slay, go segment some buffers ππ¦
π¦ 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