aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDenis V. Lunev <den@openvz.org>2008-01-10 06:53:12 -0500
committerDavid S. Miller <davem@davemloft.net>2008-01-28 18:01:37 -0500
commit4250846146c04ac6f17bf92619ddfef6db2cf34f (patch)
tree4fb27a2735e521f34ae4f2d20b39936db1b632e7
parentae22120ad846399f6aa19c5b32f8d4c7bd068fd1 (diff)
[NEIGH]: Make /proc/net/arp opening consistent with seq_net_open semantics
seq_open_net requires that first field of the seq->private data to be struct seq_net_private. In reality this is a single pointer to a struct net for now. The patch makes code consistent. Signed-off-by: Denis V. Lunev <den@openvz.org> Signed-off-by: David S. Miller <davem@davemloft.net>
-rw-r--r--include/net/neighbour.h2
-rw-r--r--net/core/neighbour.c8
2 files changed, 5 insertions, 5 deletions
diff --git a/include/net/neighbour.h b/include/net/neighbour.h
index a9dda2908211..09f9fc60a779 100644
--- a/include/net/neighbour.h
+++ b/include/net/neighbour.h
@@ -223,7 +223,7 @@ extern void __neigh_for_each_release(struct neigh_table *tbl, int (*cb)(struct n
223extern void pneigh_for_each(struct neigh_table *tbl, void (*cb)(struct pneigh_entry *)); 223extern void pneigh_for_each(struct neigh_table *tbl, void (*cb)(struct pneigh_entry *));
224 224
225struct neigh_seq_state { 225struct neigh_seq_state {
226 struct net *net; 226 struct seq_net_private p;
227 struct neigh_table *tbl; 227 struct neigh_table *tbl;
228 void *(*neigh_sub_iter)(struct neigh_seq_state *state, 228 void *(*neigh_sub_iter)(struct neigh_seq_state *state,
229 struct neighbour *n, loff_t *pos); 229 struct neighbour *n, loff_t *pos);
diff --git a/net/core/neighbour.c b/net/core/neighbour.c
index 802493327a87..19c0dd12fd58 100644
--- a/net/core/neighbour.c
+++ b/net/core/neighbour.c
@@ -2142,7 +2142,7 @@ EXPORT_SYMBOL(__neigh_for_each_release);
2142static struct neighbour *neigh_get_first(struct seq_file *seq) 2142static struct neighbour *neigh_get_first(struct seq_file *seq)
2143{ 2143{
2144 struct neigh_seq_state *state = seq->private; 2144 struct neigh_seq_state *state = seq->private;
2145 struct net *net = state->net; 2145 struct net *net = state->p.net;
2146 struct neigh_table *tbl = state->tbl; 2146 struct neigh_table *tbl = state->tbl;
2147 struct neighbour *n = NULL; 2147 struct neighbour *n = NULL;
2148 int bucket = state->bucket; 2148 int bucket = state->bucket;
@@ -2183,7 +2183,7 @@ static struct neighbour *neigh_get_next(struct seq_file *seq,
2183 loff_t *pos) 2183 loff_t *pos)
2184{ 2184{
2185 struct neigh_seq_state *state = seq->private; 2185 struct neigh_seq_state *state = seq->private;
2186 struct net *net = state->net; 2186 struct net *net = state->p.net;
2187 struct neigh_table *tbl = state->tbl; 2187 struct neigh_table *tbl = state->tbl;
2188 2188
2189 if (state->neigh_sub_iter) { 2189 if (state->neigh_sub_iter) {
@@ -2243,7 +2243,7 @@ static struct neighbour *neigh_get_idx(struct seq_file *seq, loff_t *pos)
2243static struct pneigh_entry *pneigh_get_first(struct seq_file *seq) 2243static struct pneigh_entry *pneigh_get_first(struct seq_file *seq)
2244{ 2244{
2245 struct neigh_seq_state *state = seq->private; 2245 struct neigh_seq_state *state = seq->private;
2246 struct net * net = state->net; 2246 struct net * net = state->p.net;
2247 struct neigh_table *tbl = state->tbl; 2247 struct neigh_table *tbl = state->tbl;
2248 struct pneigh_entry *pn = NULL; 2248 struct pneigh_entry *pn = NULL;
2249 int bucket = state->bucket; 2249 int bucket = state->bucket;
@@ -2266,7 +2266,7 @@ static struct pneigh_entry *pneigh_get_next(struct seq_file *seq,
2266 loff_t *pos) 2266 loff_t *pos)
2267{ 2267{
2268 struct neigh_seq_state *state = seq->private; 2268 struct neigh_seq_state *state = seq->private;
2269 struct net * net = state->net; 2269 struct net * net = state->p.net;
2270 struct neigh_table *tbl = state->tbl; 2270 struct neigh_table *tbl = state->tbl;
2271 2271
2272 pn = pn->next; 2272 pn = pn->next;