Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 590c3fec authored by Andreea-Cristina Bernat's avatar Andreea-Cristina Bernat Committed by Roland Dreier
Browse files

IB/qib: Replace rcu_assign_pointer() with RCU_INIT_POINTER() in qib_keys.c

The uses of "rcu_assign_pointer()" are NULLing out the pointers.
According to RCU_INIT_POINTER()'s block comment:
"1.   This use of RCU_INIT_POINTER() is NULLing out the pointer"
it is better to use it instead of rcu_assign_pointer() because it has a
smaller overhead.

The following Coccinelle semantic patch was used:
@@
@@

- rcu_assign_pointer
+ RCU_INIT_POINTER
  (..., NULL)

[Derived from http://marc.info/?l=linux-rdma&m=140836519219236&w=2

]

Tested-by: default avatarMike Marciniszyn <mike.marciniszyn@intel.com>
Signed-off-by: default avatarAndreea-Cristina Bernat <bernat.ada@gmail.com>
Signed-off-by: default avatarMike Marciniszyn <mike.marciniszyn@intel.com>
Signed-off-by: default avatarRoland Dreier <roland@purestorage.com>
parent 03c88591
Loading
Loading
Loading
Loading
+2 −2
Original line number Diff line number Diff line
@@ -122,10 +122,10 @@ void qib_free_lkey(struct qib_mregion *mr)
	if (!mr->lkey_published)
		goto out;
	if (lkey == 0)
		rcu_assign_pointer(dev->dma_mr, NULL);
		RCU_INIT_POINTER(dev->dma_mr, NULL);
	else {
		r = lkey >> (32 - ib_qib_lkey_table_size);
		rcu_assign_pointer(rkt->table[r], NULL);
		RCU_INIT_POINTER(rkt->table[r], NULL);
	}
	qib_put_mr(mr);
	mr->lkey_published = 0;