rcu_dereference_bh_check(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’– 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:


Mwah πŸ’‹ β€” source ./include/linux, date October 2026, page rcu_dereference_bh_check(9). Bye bestie! 🫢

πŸ“¦ where this page comes from