Re: [PATCH] libfs: Replace rcu_assign_pointer() with RCU_INIT_POINTER()

From: Vasu Dev
Date: Thu Sep 25 2014 - 18:01:35 EST


On Mon, 2014-08-18 at 17:56 +0300, Andreea-Cristina Bernat wrote:
> 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@xxxxxxxxx>
> ---
> drivers/scsi/libfc/fc_libfc.c | 4 ++--
> 1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/scsi/libfc/fc_libfc.c b/drivers/scsi/libfc/fc_libfc.c
> index 8d65a51a..c11a638 100644
> --- a/drivers/scsi/libfc/fc_libfc.c
> +++ b/drivers/scsi/libfc/fc_libfc.c
> @@ -296,9 +296,9 @@ void fc_fc4_deregister_provider(enum fc_fh_type type, struct fc4_prov *prov)
> BUG_ON(type >= FC_FC4_PROV_SIZE);
> mutex_lock(&fc_prov_mutex);
> if (prov->recv)
> - rcu_assign_pointer(fc_passive_prov[type], NULL);
> + RCU_INIT_POINTER(fc_passive_prov[type], NULL);
> else
> - rcu_assign_pointer(fc_active_prov[type], NULL);
> + RCU_INIT_POINTER(fc_active_prov[type], NULL);
> mutex_unlock(&fc_prov_mutex);
> synchronize_rcu();
> }

Looks like patch is not yet applied.

Acked-by: Vasu Dev <vasu.dev@xxxxxxxxx>


--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/