lkml.org 
[lkml]   [2017]   [Oct]   [9]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH RFC tip/core/rcu 06/15] rcu: Adjust read-side accessor comments for READ_ONCE()
    Date
    Now that READ_ONCE() implies smp_read_barrier_depends(), the commit
    updates now-misleading comments to account for this change.

    Signed-off-by: Paul E. McKenney <paulmck@linux.vnet.ibm.com>
    ---
    include/linux/rcupdate.h | 23 +++++++++++------------
    1 file changed, 11 insertions(+), 12 deletions(-)

    diff --git a/include/linux/rcupdate.h b/include/linux/rcupdate.h
    index de50d8a4cf41..de386d82e2f1 100644
    --- a/include/linux/rcupdate.h
    +++ b/include/linux/rcupdate.h
    @@ -433,12 +433,12 @@ static inline void rcu_preempt_sleep_check(void) { }
    * @p: The pointer to read
    *
    * Return the value of the specified RCU-protected pointer, but omit the
    - * smp_read_barrier_depends() and keep the READ_ONCE(). This is useful
    - * when the value of this pointer is accessed, but the pointer is not
    - * dereferenced, for example, when testing an RCU-protected pointer against
    - * NULL. Although rcu_access_pointer() may also be used in cases where
    - * update-side locks prevent the value of the pointer from changing, you
    - * should instead use rcu_dereference_protected() for this use case.
    + * lockdep checks for being in an RCU read-side critical section. This is
    + * useful when the value of this pointer is accessed, but the pointer is
    + * not dereferenced, for example, when testing an RCU-protected pointer
    + * against NULL. Although rcu_access_pointer() may also be used in cases
    + * where update-side locks prevent the value of the pointer from changing,
    + * you should instead use rcu_dereference_protected() for this use case.
    *
    * It is also permissible to use rcu_access_pointer() when read-side
    * access to the pointer was removed at least one grace period ago, as
    @@ -521,12 +521,11 @@ static inline void rcu_preempt_sleep_check(void) { }
    * @c: The conditions under which the dereference will take place
    *
    * Return the value of the specified RCU-protected pointer, but omit
    - * both the smp_read_barrier_depends() and the READ_ONCE(). This
    - * is useful in cases where update-side locks prevent the value of the
    - * pointer from changing. Please note that this primitive does -not-
    - * prevent the compiler from repeating this reference or combining it
    - * with other references, so it should not be used without protection
    - * of appropriate locks.
    + * the READ_ONCE(). This is useful in cases where update-side locks
    + * prevent the value of the pointer from changing. Please note that this
    + * primitive does -not- prevent the compiler from repeating this reference
    + * or combining it with other references, so it should not be used without
    + * protection of appropriate locks.
    *
    * This function is only for update-side use. Using this function
    * when protected only by rcu_read_lock() will result in infrequent
    --
    2.5.2
    \
     
     \ /
      Last update: 2017-10-10 02:23    [W:2.491 / U:0.092 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site