diff options
author | Pavel Emelianov <xemul@openvz.org> | 2007-05-03 18:13:45 -0400 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2007-05-03 18:13:45 -0400 |
commit | 7562f876cd93800f2f8c89445f2a563590b24e09 (patch) | |
tree | 78a34c011af275efa0d55ba59c3bd49b771dd533 /net/core/dev_mcast.c | |
parent | 03fba0479600114f32d29eee74ca3eaa364606bf (diff) |
[NET]: Rework dev_base via list_head (v3)
Cleanup of dev_base list use, with the aim to simplify making device
list per-namespace. In almost every occasion, use of dev_base variable
and dev->next pointer could be easily replaced by for_each_netdev
loop. A few most complicated places were converted to using
first_netdev()/next_netdev().
Signed-off-by: Pavel Emelianov <xemul@openvz.org>
Acked-by: Kirill Korotaev <dev@openvz.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/core/dev_mcast.c')
-rw-r--r-- | net/core/dev_mcast.c | 5 |
1 files changed, 2 insertions, 3 deletions
diff --git a/net/core/dev_mcast.c b/net/core/dev_mcast.c index 7d57bf77f3a..5a54053386c 100644 --- a/net/core/dev_mcast.c +++ b/net/core/dev_mcast.c | |||
@@ -223,7 +223,7 @@ static void *dev_mc_seq_start(struct seq_file *seq, loff_t *pos) | |||
223 | loff_t off = 0; | 223 | loff_t off = 0; |
224 | 224 | ||
225 | read_lock(&dev_base_lock); | 225 | read_lock(&dev_base_lock); |
226 | for (dev = dev_base; dev; dev = dev->next) { | 226 | for_each_netdev(dev) { |
227 | if (off++ == *pos) | 227 | if (off++ == *pos) |
228 | return dev; | 228 | return dev; |
229 | } | 229 | } |
@@ -232,9 +232,8 @@ static void *dev_mc_seq_start(struct seq_file *seq, loff_t *pos) | |||
232 | 232 | ||
233 | static void *dev_mc_seq_next(struct seq_file *seq, void *v, loff_t *pos) | 233 | static void *dev_mc_seq_next(struct seq_file *seq, void *v, loff_t *pos) |
234 | { | 234 | { |
235 | struct net_device *dev = v; | ||
236 | ++*pos; | 235 | ++*pos; |
237 | return dev->next; | 236 | return next_net_device((struct net_device *)v); |
238 | } | 237 | } |
239 | 238 | ||
240 | static void dev_mc_seq_stop(struct seq_file *seq, void *v) | 239 | static void dev_mc_seq_stop(struct seq_file *seq, void *v) |