rcu_dereference_bh_check(9)
π NAME π
Okay so bestie, this is the Kernel API Manual page for rcu_dereference_bh_check(9) β¨. Official-name vibes: rcu_dereference_bh_check - rcu_dereference_bh with debug checking. That's the whole main-character energy of this page, no cap.
πΈ SYNOPSIS πΈ
rcu_dereference_bh_check (p , c );
π ARGUMENTS π
pβ the pointer to read, prior to dereferencing it. Read first, dereference later, iykyk π .cβ the conditions under which the dereference will take place. Literally the conditions, bestie.
π DESCRIPTION π
This is the RCU-bh counterpart to rcu_dereference_check. That's the core fact, periodt.
But please note β and this is giving important-plot-twist energy β starting in v5.0 kernels, vanilla RCU grace periods wait for local_bh_disable regions of code in addition to regions of code demarked by rcu_read_lock and rcu_read_unlock. So yeah, the grace periods are doing extra credit now.
This means synchronize_rcu, call_rcu, and friends all take not only rcu_read_lock but also rcu_read_lock_bh into account. They're matching the whole fit, not just one accessory π«Ά.
π¦ SEE ALSO π¦
Kernel file: ./include/linux/rcupdate.h β and here's the whole squad, bestie:
same_state_synchronize_rcu(9)cond_resched_tasks_rcu_qs(9)rcu_softirq_qs_periodic(9)RCU_LOCKDEP_WARN(9)lockdep_assert_in_rcu_read_lock(9)lockdep_assert_in_rcu_read_lock_bh(9)lockdep_assert_in_rcu_read_lock_sched(9)lockdep_assert_in_rcu_reader(9)unrcu_pointer(9)RCU_INITIALIZER(9)rcu_assign_pointer(9)rcu_replace_pointer(9)rcu_access_pointer(9)rcu_dereference_check(9)rcu_dereference_sched_check(9)rcu_dereference_all_check(9)rcu_dereference_protected(9)rcu_dereference(9)rcu_dereference_bh(9)rcu_dereference_sched(9)rcu_dereference_all(9)rcu_pointer_handoff(9)rcu_read_lock(9)rcu_read_unlock(9)rcu_read_lock_bh(9)rcu_read_unlock_bh(9)rcu_read_lock_sched(9)rcu_read_unlock_sched(9)RCU_INIT_POINTER(9)RCU_POINTER_INITIALIZER(9)kfree_rcu(9)kfree_rcu_mightsleep(9)kfree_rcu_nolock(9)rcu_head_init(9)rcu_head_after_call_rcu(9)
Mwah π β source ./include/linux, date October 2026, page rcu_dereference_bh_check(9). Bye bestie! π«Ά
π¦ 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