diff options
author | Andreea-Cristina Bernat <bernat.ada@gmail.com> | 2014-08-18 10:56:22 -0400 |
---|---|---|
committer | Christoph Hellwig <hch@lst.de> | 2014-09-30 03:28:36 -0400 |
commit | f4303d8fa6da702b5fe53fa91a6984941d89d514 (patch) | |
tree | 0246ccff9c4d85caec144dcae9773c271ff584a4 /drivers/scsi/libfc/fc_libfc.c | |
parent | b8d23dc6133c495cf9161dfb36988bbbe163461d (diff) |
libfc: 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>
Acked-by: Vasu Dev <vasu.dev@intel.com>
Signed-off-by: Christoph Hellwig <hch@lst.de>
Diffstat (limited to 'drivers/scsi/libfc/fc_libfc.c')
-rw-r--r-- | drivers/scsi/libfc/fc_libfc.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/drivers/scsi/libfc/fc_libfc.c b/drivers/scsi/libfc/fc_libfc.c index 8d65a51a7598..c11a638f32e6 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) | |||
296 | BUG_ON(type >= FC_FC4_PROV_SIZE); | 296 | BUG_ON(type >= FC_FC4_PROV_SIZE); |
297 | mutex_lock(&fc_prov_mutex); | 297 | mutex_lock(&fc_prov_mutex); |
298 | if (prov->recv) | 298 | if (prov->recv) |
299 | rcu_assign_pointer(fc_passive_prov[type], NULL); | 299 | RCU_INIT_POINTER(fc_passive_prov[type], NULL); |
300 | else | 300 | else |
301 | rcu_assign_pointer(fc_active_prov[type], NULL); | 301 | RCU_INIT_POINTER(fc_active_prov[type], NULL); |
302 | mutex_unlock(&fc_prov_mutex); | 302 | mutex_unlock(&fc_prov_mutex); |
303 | synchronize_rcu(); | 303 | synchronize_rcu(); |
304 | } | 304 | } |