aboutsummaryrefslogtreecommitdiffstats
path: root/block
diff options
context:
space:
mode:
authorPaul E. McKenney <paulmck@linux.vnet.ibm.com>2014-02-17 16:35:57 -0500
committerJens Axboe <axboe@fb.com>2014-02-18 15:21:26 -0500
commitec6c676a08b0779a32c9cec9fae7532add32fe15 (patch)
treee76b0548ed7bc4a2927aa3bc4e3bec2bc8adf7da /block
parente3ebf0d457039c857dfeb45434e3be9780dea499 (diff)
block: Substitute rcu_access_pointer() for rcu_dereference_raw()
(Trivial patch.) If the code is looking at the RCU-protected pointer itself, but not dereferencing it, the rcu_dereference() functions can be downgraded to rcu_access_pointer(). This commit makes this downgrade in blkg_destroy() and ioc_destroy_icq(), both of which simply compare the RCU-protected pointer against another pointer with no dereferencing. Signed-off-by: Paul E. McKenney <paulmck@linux.vnet.ibm.com> Cc: Jens Axboe <axboe@kernel.dk> Signed-off-by: Jens Axboe <axboe@fb.com>
Diffstat (limited to 'block')
-rw-r--r--block/blk-cgroup.c2
-rw-r--r--block/blk-ioc.c2
2 files changed, 2 insertions, 2 deletions
diff --git a/block/blk-cgroup.c b/block/blk-cgroup.c
index 4e491d9b5292..b6e95b5e262f 100644
--- a/block/blk-cgroup.c
+++ b/block/blk-cgroup.c
@@ -336,7 +336,7 @@ static void blkg_destroy(struct blkcg_gq *blkg)
336 * under queue_lock. If it's not pointing to @blkg now, it never 336 * under queue_lock. If it's not pointing to @blkg now, it never
337 * will. Hint assignment itself can race safely. 337 * will. Hint assignment itself can race safely.
338 */ 338 */
339 if (rcu_dereference_raw(blkcg->blkg_hint) == blkg) 339 if (rcu_access_pointer(blkcg->blkg_hint) == blkg)
340 rcu_assign_pointer(blkcg->blkg_hint, NULL); 340 rcu_assign_pointer(blkcg->blkg_hint, NULL);
341 341
342 /* 342 /*
diff --git a/block/blk-ioc.c b/block/blk-ioc.c
index 242df01413f6..1a27f45ec776 100644
--- a/block/blk-ioc.c
+++ b/block/blk-ioc.c
@@ -68,7 +68,7 @@ static void ioc_destroy_icq(struct io_cq *icq)
68 * under queue_lock. If it's not pointing to @icq now, it never 68 * under queue_lock. If it's not pointing to @icq now, it never
69 * will. Hint assignment itself can race safely. 69 * will. Hint assignment itself can race safely.
70 */ 70 */
71 if (rcu_dereference_raw(ioc->icq_hint) == icq) 71 if (rcu_access_pointer(ioc->icq_hint) == icq)
72 rcu_assign_pointer(ioc->icq_hint, NULL); 72 rcu_assign_pointer(ioc->icq_hint, NULL);
73 73
74 ioc_exit_icq(icq); 74 ioc_exit_icq(icq);