srcu_dereference_check(9)
π srcu_dereference_check(9) π
okay so bestie, welcome to the Kernel API Manual entry for srcu_dereference_check(9) β the little function with main character energy that fetches an SRCU-protected pointer so you can dereference it later. No cap, this is the one. π
β¨ NAME β¨
srcu_dereference_check β fetch SRCU-protected pointer for later dereferencing. Literally that. π¦
π SYNOPSIS π
srcu_dereference_check (p , ssp , c );
π ARGUMENTS π
pβ the pointer to fetch and protect for later dereferencing. It's giving βhold this for me, bestieβ. π«Άsspβ pointer to thesrcu_struct, which is used to check that we really are in an SRCU read-side critical section. Lowkey the vibe check for your locking. π₯cβ condition to check for update-side use. Yes bestie, this is the condition. π
πΈ DESCRIPTION πΈ
If PROVE_RCU is enabled, invoking this outside of an RCU read-side critical section will result in an RCU-lockdep splat, unless c evaluates to 1. Not me getting yelled at by lockdep π. The c argument will normally be a logical expression containing lockdep_is_held calls. So like, that's the receipts. π§
π SEE ALSO π
The kernel file ./include/linux/srcu.h is where it lives, and these are the whole friend group β go say hi:
get_completed_synchronize_srcu(9)same_state_synchronize_srcu(9)srcu_read_lock_held(9)srcu_dereference(9)srcu_dereference_notrace(9)srcu_read_lock(9)srcu_read_lock_fast(9)srcu_read_lock_fast_updown(9)srcu_down_read_fast(9)srcu_read_lock_nmisafe(9)srcu_down_read(9)srcu_read_unlock(9)srcu_read_unlock_fast(9)srcu_read_unlock_fast_updown(9)srcu_up_read_fast(9)srcu_read_unlock_nmisafe(9)srcu_up_read(9)smp_mb__after_srcu_read_unlock(9)smp_mb__after_srcu_read_lock(9)
okay bye bestie π this page came from ./include/linux, dated October 2026, and it's serving srcu_dereference_check(9) realness. go dereference responsibly, periodt. π
π¦ 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