lkml.org 
[lkml]   [2014]   [Aug]   [18]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    Date
    From
    Subject[PATCH] qib_keys: Replace rcu_assign_pointer() with RCU_INIT_POINTER()
    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)

    Signed-off-by: Andreea-Cristina Bernat <bernat.ada@gmail.com>
    ---
    drivers/infiniband/hw/qib/qib_keys.c | 4 ++--
    1 file changed, 2 insertions(+), 2 deletions(-)

    diff --git a/drivers/infiniband/hw/qib/qib_keys.c b/drivers/infiniband/hw/qib/qib_keys.c
    index 3b9afcc..ad843c7 100644
    --- a/drivers/infiniband/hw/qib/qib_keys.c
    +++ b/drivers/infiniband/hw/qib/qib_keys.c
    @@ -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;
    --
    1.9.1


    \
     
     \ /
      Last update: 2014-08-18 14:41    [W:3.000 / U:0.008 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site