list_tail_rcu(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’– list_tail_rcu β€” Kernel API Manual, bestie edition πŸŽ€

okay so bestie, welcome to the list_tail_rcu(9) page!! this one is SHORT and sweet β€” a little one-line icon that just wants to hand you a pointer. let's get into it ✨


✨ NAME ✨

list_tail_rcu β€” literally just returns the prev pointer of the head of the list. that's it. that's the whole job. no cap πŸ’…


🌸 SYNOPSIS 🌸

list_tail_rcu (head );

yes she's a one-argument girlie and she's thriving πŸ¦‹


🫢 ARGUMENTS 🫢

  • head β€” the head of the list, babe. that's the one and only thing you pass in πŸ’œ

πŸ’€ NOTE πŸ’€

okay this is the important part so pls don't skip it πŸ™ˆ

This should only be used with the list header β€” and even then, only if list_del and similar primitives are not also used on the list header. fr fr, do not come for this function and then also run list_del style stuff on that same header. it's giving undefined-behaviour-adjacent heartbreak and we don't want that for you 😭


🧚 SEE ALSO 🧚

the whole rculist extended universe, gathered here for your scrolling pleasure πŸ‘‘

Kernel file ./include/linux/rculist.h β€” plus these absolutely iconic siblings:

list_for_each_rcu(9), list_add_rcu(9), list_add_tail_rcu(9), list_del_rcu(9), list_bidir_del_rcu(9), hlist_del_init_rcu(9), list_replace_rcu(9), list_splice_rcu(9), __list_splice_init_rcu(9), list_splice_init_rcu(9), list_splice_tail_init_rcu(9), list_entry_rcu(9), list_first_or_null_rcu(9), list_next_or_null_rcu(9), list_for_each_entry_rcu(9), list_for_each_entry_srcu(9), list_entry_lockless(9), list_for_each_entry_lockless(9), list_for_each_entry_continue_rcu(9), list_for_each_entry_from_rcu(9), hlist_del_rcu(9), hlist_replace_rcu(9), hlists_swap_heads_rcu(9), hlist_add_head_rcu(9), hlist_add_tail_rcu(9), hlist_add_before_rcu(9), hlist_add_behind_rcu(9), hlist_for_each_entry_rcu(9), hlist_for_each_entry_srcu(9), hlist_for_each_entry_rcu_notrace(9), hlist_for_each_entry_rcu_bh(9), hlist_for_each_entry_continue_rcu(9), hlist_for_each_entry_continue_rcu_bh(9), hlist_for_each_entry_from_rcu(9)

like, that's a whole friend group right there 🌈


and that's the page!! πŸŽ€ this little cutie lives in ./include/linux, dated October 2026, and she's part of the Kernel API Manual β€” go forth and read your prev pointer with main character energy, bestie πŸ’…βœ¨πŸ¦‹

πŸ“¦ where this page comes from