nlmsg_new_large(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

🌸 nlmsg_new_large β€” Kernel API Manual, bestie edition 🌸

okay so this is a page from the Kernel API Manual (that's the manual name, iykyk) and today's main character is nlmsg_new_large(9). buckle up πŸŽ€


✨ NAME ✨

nlmsg_new_large β€” allocate a new netlink message with non-contiguous physical memory. yes bestie, the memory is not sitting all cute and next to each other. it's scattered. slay. πŸ’…


πŸ¦‹ SYNOPSIS πŸ¦‹

struct sk_buff * nlmsg_new_large (size_t payload );

πŸ’– ARGUMENTS πŸ’–

  • payload β€” the size of the message payload. that's it. that's the whole vibe check. 🫢

πŸ‘‘ DESCRIPTION πŸ‘‘

so here's the tea β˜• β€” the allocated skb is unable to have a frag page for shinfo->frags*, because the NULL setting for skb->head in netlink_skb_destructor will bypass most of the handling in skb_release_data.

no cap, that's a real consequence β€” the frag page situation just doesn't happen here because of that NULL bypass. noted, respected, moving on 😭

🌈 SEE ALSO 🌈

the reading list is long bestie, but we're getting through all of it. no skipping, no scrolling past. periodt. πŸ”₯


and that's the whole page bestie, you ate this πŸ’œ β€” signed off from ./include/net, dated October 2026, on the nlmsg_new_large(9) page itself. go forth and allocate 🧚✨

πŸ“¦ where this page comes from