aboutsummaryrefslogtreecommitdiffstats
path: root/net/decnet/dn_dev.c
diff options
context:
space:
mode:
authorPatrick McHardy <kaber@trash.net>2007-04-16 20:00:53 -0400
committerDavid S. Miller <davem@sunset.davemloft.net>2007-04-26 01:29:05 -0400
commit6313c1e0992feaee56bc09b85042b3186041fa3c (patch)
treef75cda674d8f2b62bcdb09e59f8bc7010003a91f /net/decnet/dn_dev.c
parent1c2d670f3660e9103fdcdca702f6dbf8ea7d6afb (diff)
[RTNETLINK]: Remove unnecessary locking in dump callbacks
Since we're now holding the rtnl during the entire dump operation, we can remove additional locking for rtnl protected data. This patch does that for all simple cases (dev_base_lock for dev_base walking, RCU protection for FIB rule dumping). Signed-off-by: Patrick McHardy <kaber@trash.net> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/decnet/dn_dev.c')
-rw-r--r--net/decnet/dn_dev.c3
1 files changed, 0 insertions, 3 deletions
diff --git a/net/decnet/dn_dev.c b/net/decnet/dn_dev.c
index 61be2caddc57..5c2a9951b638 100644
--- a/net/decnet/dn_dev.c
+++ b/net/decnet/dn_dev.c
@@ -799,7 +799,6 @@ static int dn_nl_dump_ifaddr(struct sk_buff *skb, struct netlink_callback *cb)
799 skip_ndevs = cb->args[0]; 799 skip_ndevs = cb->args[0];
800 skip_naddr = cb->args[1]; 800 skip_naddr = cb->args[1];
801 801
802 read_lock(&dev_base_lock);
803 for (dev = dev_base, idx = 0; dev; dev = dev->next, idx++) { 802 for (dev = dev_base, idx = 0; dev; dev = dev->next, idx++) {
804 if (idx < skip_ndevs) 803 if (idx < skip_ndevs)
805 continue; 804 continue;
@@ -824,8 +823,6 @@ static int dn_nl_dump_ifaddr(struct sk_buff *skb, struct netlink_callback *cb)
824 } 823 }
825 } 824 }
826done: 825done:
827 read_unlock(&dev_base_lock);
828
829 cb->args[0] = idx; 826 cb->args[0] = idx;
830 cb->args[1] = dn_idx; 827 cb->args[1] = dn_idx;
831 828