DECLARE_IP_...ETS_SAFE_RCU(9)
π DECLARE_IP_...ETS_SAFE_RCU(9) π
okay so bestie, welcome to the Kernel API Manual β yes, that's the whole manual name, she's fancy like that π β and today's main character is a macro with the longest name in the group chat. Buckle up, it's literally one line of lore but we're gonna give it the energy it deserves β¨
β¨ NAME β¨
DECLARE_IP_VS_RHT_WALK_BUCKETS_SAFE_RCU β the macro that just declares variables for you. that's it. that's the whole job. and honestly? she ate π«Ά
πΈ SYNOPSIS πΈ
DECLARE_IP_VS_RHT_WALK_BUCKETS_SAFE_RCU
no args, no parentheses, no drama. you just drop her in and she does her little declaration thing π
π¦ DESCRIPTION π¦
k so, real talk: this macro sets up the variables that ip_vs_rht_walk_buckets_safe_rcu needs to do its thing. like, she's the backstage crew for that function β no cap, no spotlight, just vibes and variable declarations so the actual walking-around code has somewhere to live ππ₯
it's giving "supporting role that quietly carries the whole production." iconic behavior tbh π
π SEE ALSO π
the whole friend group, in order, exactly as they appear in the kernel file ./include/net/ip_vs.h:
ip_vs_rht_for_each_table(9)ip_vs_rht_for_each_table_rcu(9)ip_vs_rht_for_each_bucket(9)ip_vs_rht_for_bucket_retry(9)DECLARE_IP_VS_RHT_WALK_BUCKETS_RCU(9)ip_vs_rht_walk_buckets_rcu(9)DECLARE_IP_VS_RHT_WALK_BUCKET_RCU(9)ip_vs_rht_walk_bucket_rcu(9)ip_vs_rht_walk_buckets_safe_rcu(9)DECLARE_IP_VS_RHT_WALK_BUCKETS(9)ip_vs_rht_walk_buckets(9)
ngl bestie, this page is short but she's part of a whole ecosystem β if you're touching the RCU walk stuff, go read the rest of the squad up there before you ship anything π
and that's the tea π this little gem lives over in ./include/net, and this edition dropped in October 2026 β go off, king πβ¨π§ββοΈ
π¦ 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