netdev.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH] carl9170: Replace rcu_dereference() with rcu_access_pointer()
@ 2014-08-17 10:48 Andreea-Cristina Bernat
  2014-08-18 19:29 ` Christian Lamparter
  0 siblings, 1 reply; 5+ messages in thread
From: Andreea-Cristina Bernat @ 2014-08-17 10:48 UTC (permalink / raw)
  To: chunkeey, linville, linux-wireless, netdev, linux-kernel; +Cc: paulmck

The rcu_dereference() call is used directly in a condition.
Since its return value is never dereferenced it is recommended to use
"rcu_access_pointer()" instead of "rcu_dereference()".
Therefore, this patch makes the replacement.

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

(
 if(
 (<+...
- rcu_dereference
+ rcu_access_pointer
  (...)
  ...+>)) {...}
|
  while(
  (<+...
- rcu_dereference
+ rcu_access_pointer
  (...)
  ...+>)) {...}
)

Signed-off-by: Andreea-Cristina Bernat <bernat.ada@gmail.com>
---
 drivers/net/wireless/ath/carl9170/main.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/net/wireless/ath/carl9170/main.c b/drivers/net/wireless/ath/carl9170/main.c
index f8ded84..12018ff 100644
--- a/drivers/net/wireless/ath/carl9170/main.c
+++ b/drivers/net/wireless/ath/carl9170/main.c
@@ -1431,7 +1431,7 @@ static int carl9170_op_ampdu_action(struct ieee80211_hw *hw,
 			return -EOPNOTSUPP;
 
 		rcu_read_lock();
-		if (rcu_dereference(sta_info->agg[tid])) {
+		if (rcu_access_pointer(sta_info->agg[tid])) {
 			rcu_read_unlock();
 			return -EBUSY;
 		}
-- 
1.9.1

^ permalink raw reply related	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2014-08-21 20:10 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2014-08-17 10:48 [PATCH] carl9170: Replace rcu_dereference() with rcu_access_pointer() Andreea-Cristina Bernat
2014-08-18 19:29 ` Christian Lamparter
2014-08-20 17:32   ` Andreea Bernat
2014-08-20 20:20     ` Christian Lamparter
2014-08-21 20:10       ` Andreea Bernat

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).