Re: [PATCH v2] doc: Update recent RCU/SRCU API additions to whatisRCU.rst

From: Joel Fernandes

Date: Wed Nov 11 2026 - 11:04:49 EST


On Mon, Oct 19, 2026 at 09:44:40AM -0700, Paul E. McKenney wrote:
> On Mon, Oct 19, 2026 at 08:22:09PM +0800, Zqiang wrote:
> > The following commit introduces some new RCU/SRCU APIs:
> >
> > Commit 'd3f52f53a562 ("srcu: Create an SRCU-fast-updown API")'
> > Commit 'dab06d6f9379 ("srcutree: Add an atomic Tree SRCU")'
> > Commit 'cacadb630375 ("srcu: Add guards for notrace variants of SRCU-fast readers")'
> > Commit 'fa8a2d55139f ("srcu: Add lock guard for srcu_fast_updown flavor")'
> > Commit '954c0d741299 ("srcu: Add guards for SRCU-fast readers")'
> >
> > This commit therefore update thems and some missing RCU related APIs
> > to whatisRCU.rst.
> >
> > Signed-off-by: Zqiang <qiang.zhang@xxxxxxxxx>
>
> Thank you, for both patches:
>
> Reviewed-by: Paul E. McKenney <paulmck@xxxxxxxxxx>

Applied with Paul's tag for v7.5.

thanks,

Joel Fernandes

>
> > ---
> > Documentation/RCU/whatisRCU.rst | 24 +++++++++++++++++++++---
> > 1 file changed, 21 insertions(+), 3 deletions(-)
> >
> > diff --git a/Documentation/RCU/whatisRCU.rst b/Documentation/RCU/whatisRCU.rst
> > index e6767baff2d3..fe9dc3948690 100644
> > --- a/Documentation/RCU/whatisRCU.rst
> > +++ b/Documentation/RCU/whatisRCU.rst
> > @@ -1084,8 +1084,9 @@ RCU::
> > rcu_dereference call_rcu
> > rcu_dereference_check call_rcu_hurry
> > rcu_dereference_protected kfree_rcu
> > - rcu_read_lock_held kvfree_rcu
> > - rcu_read_lock_any_held kfree_rcu_mightsleep
> > + rcu_dereference_all kvfree_rcu
> > + rcu_read_lock_held kfree_rcu_mightsleep
> > + rcu_read_lock_any_held kvfree_rcu_mightsleep
> > rcu_pointer_handoff cond_synchronize_rcu
> > unrcu_pointer cond_synchronize_rcu_full
> > cond_synchronize_rcu_expedited
> > @@ -1209,13 +1210,23 @@ SRCU::
> > srcu_read_lock_nmisafe start_poll_synchronize_srcu
> > srcu_read_unlock_nmisafe start_poll_synchronize_srcu_expedited
> > srcu_read_lock_notrace poll_state_synchronize_srcu
> > - srcu_read_unlock_notrace
> > + srcu_read_unlock_notrace synchronize_srcu_atomic
> > srcu_down_read
> > srcu_up_read
> > srcu_down_read_fast
> > srcu_up_read_fast
> > + srcu_read_lock_fast_updown
> > + srcu_read_unlock_fast_updown
> > + srcu_read_lock_atomic
> > + srcu_read_unlock_atomic
> > guard(srcu)()
> > + guard(srcu_fast)()
> > + guard(srcu_fast_notrace)()
> > + guard(srcu_fast_updown)()
> > scoped_guard(srcu)
> > + scoped_guard(srcu_fast)
> > + scoped_guard(srcu_fast_notrace)
> > + scoped_guard(srcu_fast_updown)
> > srcu_read_lock_held
> > srcu_dereference
> > srcu_dereference_check
> > @@ -1229,9 +1240,16 @@ SRCU: Initialization/cleanup/ordering::
> > DEFINE_STATIC_SRCU
> > DEFINE_SRCU_FAST // for srcu_read_lock_fast() and friends
> > DEFINE_STATIC_SRCU_FAST // for srcu_read_lock_fast() and friends
> > + DEFINE_SRCU_FAST_UPDOWN // for srcu_read_lock_fast_updown() and friends
> > + DEFINE_STATIC_SRCU_FAST_UPDOWN // for srcu_read_lock_fast_updown() and friends
> > + DEFINE_SRCU_ATOMIC // for srcu_read_lock_atomic() and friends
> > + DEFINE_STATIC_SRCU_ATOMIC // for srcu_read_lock_atomic() and friends
> > init_srcu_struct
> > init_srcu_struct_fast
> > + init_srcu_struct_fast_updown
> > + init_srcu_struct_atomic
> > cleanup_srcu_struct
> > + smp_mb__after_srcu_read_lock
> > smp_mb__after_srcu_read_unlock
> >
> > All: lockdep-checked RCU utility APIs::
> > --
> > 2.17.1
> >