summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAnish Bhatt <anish@chelsio.com>2014-08-02 15:50:44 -0700
committerDavid S. Miller <davem@davemloft.net>2014-08-02 20:34:33 -0700
commite6b92c25d20c64c271ef429bba8febeefb848b5b (patch)
treebf3d1ba8c46554c0d181538382176a545c9c2022
parentbae2e81a69c3f0e93707b36a5a655ca0e365a78d (diff)
downloadlinux-e6b92c25d20c64c271ef429bba8febeefb848b5b.tar.bz2
cxgb4i : remove spurious use of rcu
As pointed out by the intel guys, there is no need to hold rcu read lock in cxgbi_inet6addr_handler(), this patch removes it. Fixes: 759a0cc5a3e1 ("cxgb4i: Add ipv6 code to driver, call into libcxgbi ipv6 api") Signed-off-by: Anish Bhatt <anish@chelsio.com> Signed-off-by: David S. Miller <davem@davemloft.net>
-rw-r--r--drivers/scsi/cxgbi/cxgb4i/cxgb4i.c14
1 files changed, 5 insertions, 9 deletions
diff --git a/drivers/scsi/cxgbi/cxgb4i/cxgb4i.c b/drivers/scsi/cxgbi/cxgb4i/cxgb4i.c
index a4a4e98effdd..d31f9e600639 100644
--- a/drivers/scsi/cxgbi/cxgb4i/cxgb4i.c
+++ b/drivers/scsi/cxgbi/cxgb4i/cxgb4i.c
@@ -1646,25 +1646,22 @@ static int cxgbi_inet6addr_handler(struct notifier_block *this,
struct cxgbi_device *cdev;
int ret = NOTIFY_DONE;
- rcu_read_lock();
-
if (event_dev->priv_flags & IFF_802_1Q_VLAN)
event_dev = vlan_dev_real_dev(event_dev);
cdev = cxgbi_device_find_by_netdev(event_dev, NULL);
- if (!cdev) {
- rcu_read_unlock();
+
+ if (!cdev)
return ret;
- }
+
switch (event) {
case NETDEV_UP:
ret = cxgb4_clip_get(event_dev,
(const struct in6_addr *)
((ifa)->addr.s6_addr));
- if (ret < 0) {
- rcu_read_unlock();
+ if (ret < 0)
return ret;
- }
+
ret = NOTIFY_OK;
break;
@@ -1679,7 +1676,6 @@ static int cxgbi_inet6addr_handler(struct notifier_block *this,
break;
}
- rcu_read_unlock();
return ret;
}