list_add_tail_rcu(9)
π list_add_tail_rcu(9) β Kernel API Manual π
okay bestie, this is the Kernel API Manual page for list_add_tail_rcu(9), and itβs honestly giving βquietly essential list girlieβ energy. no cap, sheβs useful. π
π NAME π
list_add_tail_rcu β add a new entry to rcu-protected list β¨
πΈ SYNOPSIS πΈ
void list_add_tail_rcu (struct list_head *new , struct list_head *head
);
π«Ά ARGUMENTS π«Ά
newβ the new entry to be added, aka the fresh little node sliding into the list πheadβ the list head to add it before, literally the spot it gets inserted ahead of π
π DESCRIPTION π
Insert a new entry before the specified head. This is useful for implementing queues β yes, queue behavior, we love to see it π₯.
The caller must take whatever precautions are necessary (such as holding appropriate locks) to avoid racing with another list-mutation primitive, such as list_add_tail_rcu or list_del_rcu, running on this same list. Like, do not skip the safety prep, bestie π. However, it is perfectly legal to run concurrently with the _rcu list-traversal primitives, such as list_for_each_entry_rcu. That part is slay and allowed π.
β οΈ tiny but important vibe check: the caller still has to take whatever precautions are necessary β such as holding appropriate locks β so another list-mutation primitive likelist_add_tail_rcuorlist_del_rcudoesnβt race with this same list.
π¦ SEE ALSO π¦
Kernel file ./include/linux/rculist.h β and hereβs the whole friend group, no one left out π«Ά:
list_for_each_rcu(9)list_tail_rcu(9)list_add_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)
signed off with π from ./include/linux, dated October 2026, for list_add_tail_rcu(9) β periodt, go add that tail entry responsibly π«Άβ¨
π¦ 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