rcu: Add sparse check for RCU_INIT_POINTER()
authorPranith Kumar <bobby.prani@gmail.com>
Thu, 25 Sep 2014 18:03:34 +0000 (14:03 -0400)
committerPaul E. McKenney <paulmck@linux.vnet.ibm.com>
Thu, 13 Nov 2014 18:35:38 +0000 (10:35 -0800)
Add a sparse check when RCU_INIT_POINTER() is used to assign a non __rcu
annotated pointer.

Signed-off-by: Pranith Kumar <bobby.prani@gmail.com>
Signed-off-by: Paul E. McKenney <paulmck@linux.vnet.ibm.com>
include/linux/rcupdate.h

index a4a819ffb2d116d1225608393481521ad3cacc88..a033d8b55773c89f13ea807852d4693e69765240 100644 (file)
@@ -1047,6 +1047,7 @@ static inline notrace void rcu_read_unlock_sched_notrace(void)
  */
 #define RCU_INIT_POINTER(p, v) \
        do { \
+               rcu_dereference_sparse(p, __rcu); \
                p = RCU_INITIALIZER(v); \
        } while (0)