sk_for_each_...y_offset_rcu(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

✨ sk_for_each_...y_offset_rcu(9) ✨

okay bestie, welcome to the Kernel API Manual πŸ’… this one's a lil macro from the networking/socket corner of the kernel and honestly it's giving "niche but essential" energy. buckle up πŸŽ€


🌸 NAME 🌸

sk_for_each_entry_offset_rcu β€” iterate over a list at a given struct offset πŸ¦‹

like, you're walking a list, but the list node lives at some offset inside your struct. lowkey iconic.


⭐ SYNOPSIS ⭐

sk_for_each_entry_offset_rcu (tpos , pos , head , offset );

that's the whole vibe, no cap. four args, in that exact order πŸ’–


🧚 ARGUMENTS 🧚

  • tpos β€” the type * to use as a loop cursor. this is your main character pointer, the one you actually look at in the loop body πŸ‘‘
  • pos β€” the struct hlist_node to use as a loop cursor. your humble little list-walker, doing the actual traversing πŸ™ˆ
  • head β€” the head for your list. the starting point, the origin story, the head of the whole situation 🌈
  • offset β€” offset of hlist_node within the struct. this is the secret sauce fr fr β€” it tells the macro where inside your struct the node be hiding πŸ”₯

πŸ¦‹ SEE ALSO πŸ¦‹

so many friends in the Kernel file ./include/net/sock.h β€” go say hi to all of them, they're literally all linked here πŸ’œ


🫢 that's the whole page bestie β€” no hidden options, no environment variables, no exit statuses to worry about. it's just a macro, its args, and its extended friend group.

sign-off time βœ¨πŸŽ€ this lil beauty lives over in ./include/net, and the manual page itself is dated October 2026 β€” so yeah, it's from the future, we stay ahead of the curve πŸ’… mwah, go iterate something gorgeous πŸ’–

πŸ“¦ where this page comes from