[Drbd-dev] [PATCH] drivers/block: Use RCU_INIT_POINTER(x, NULL) in drbd/drbd_state.c

Monam Agarwal monamagarwal123 at gmail.com
Sat Mar 22 21:32:29 CET 2014

This patch replaces rcu_assign_pointer(x, NULL) with RCU_INIT_POINTER(x, NULL)

The rcu_assign_pointer() ensures that the initialization of a structure       
is carried out before storing a pointer to that structure. 
And in the case of the NULL pointer, there is no structure to initialize. 
So, rcu_assign_pointer(p, NULL) can be safely converted to RCU_INIT_POINTER(p, NULL)

Signed-off-by: Monam Agarwal <monamagarwal123 at gmail.com>
 drivers/block/drbd/drbd_state.c |    2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/block/drbd/drbd_state.c b/drivers/block/drbd/drbd_state.c
index 216d47b..a45a0d3 100644
--- a/drivers/block/drbd/drbd_state.c
+++ b/drivers/block/drbd/drbd_state.c
@@ -1547,7 +1547,7 @@ static int w_after_conn_state_ch(struct drbd_work *w, int unused)
 		old_conf = tconn->net_conf;
 		tconn->my_addr_len = 0;
 		tconn->peer_addr_len = 0;
-		rcu_assign_pointer(tconn->net_conf, NULL);
+		RCU_INIT_POINTER(tconn->net_conf, NULL);

More information about the drbd-dev mailing list