skb_cow_head(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’… skb_cow_head(9) Β· straight out of the Kernel API Manual

okay so bestie, sit down, hydrate, and let me tell you about skb_cow_head β€” a whole entire manpage from the Kernel API Manual and honestly? she's lowkey iconic. πŸ¦‹


🌸 NAME

skb_cow_head β€” it's skb_cow but the only thing it makes writable is the head. that's it. that's the vibe check. ✨


✨ SYNOPSIS

int skb_cow_head (struct sk_buff *skb , unsigned int headroom );

(yeah the spacing is exactly like that, don't @ me, it's copy-paste from the source and we respect the source πŸ’€)


πŸŽ€ ARGUMENTS

  • skb β€” the buffer to cow πŸ„ (yes, "cow" as in copy-on-write, not the mooing kind, but honestly the mooing kind is more fun)
  • headroom β€” the headroom you need. like, how much space you're asking for. the required amount. no cap.

πŸ¦‹ DESCRIPTION

so this function is literally identical to skb_cow β€” same girl, same energy β€” except for one tiny little glow-up: instead of doing the skb_cloned check, it does the skb_header_cloned check instead. 🫢

like, that's the whole difference. that's the plot twist. skb_cloned ➑️ skb_header_cloned. periodt.

πŸ’‘ and when should you use her? when you only need to push on some header and you do not need to modify the data. that's the moment. that's her main character energy. if you're out here trying to change the actual data, she's not the one β€” she's strictly header-pushing business. πŸ‘‘

πŸ‘‘ SEE ALSO

first things first, the actual file where she lives, bestie:

Kernel file ./include/linux/skbuff.h

and now, the extended friend group 🫢 β€” every single one of these, no skips, no shuffle:


and that's the whole page, bestie β€” go forth and push headers responsibly πŸ’–

signing off from ./include/linux, dated October 2026 β€” mwah, ily, read your skb docs πŸŒˆπŸŽ€βœ¨

πŸ“¦ where this page comes from