diff options
author | WANG Cong <xiyou.wangcong@gmail.com> | 2014-11-10 18:59:36 -0500 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2014-11-11 15:23:54 -0500 |
commit | d7480fd3b1738a8eae6a76098b17af318cf9b9cc (patch) | |
tree | 559ba1e8e583fec97c223f31b3657023e71febfb /include/net/neighbour.h | |
parent | b2e2f0c779fefede3a871781c8827bd8e76c7c0f (diff) |
neigh: remove dynamic neigh table registration support
Currently there are only three neigh tables in the whole kernel:
arp table, ndisc table and decnet neigh table. What's more,
we don't support registering multiple tables per family.
Therefore we can just make these tables statically built-in.
Cc: David S. Miller <davem@davemloft.net>
Signed-off-by: Cong Wang <xiyou.wangcong@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'include/net/neighbour.h')
-rw-r--r-- | include/net/neighbour.h | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/include/net/neighbour.h b/include/net/neighbour.h index dedfb188b1a7..eb070b3674a1 100644 --- a/include/net/neighbour.h +++ b/include/net/neighbour.h | |||
@@ -220,6 +220,13 @@ struct neigh_table { | |||
220 | struct pneigh_entry **phash_buckets; | 220 | struct pneigh_entry **phash_buckets; |
221 | }; | 221 | }; |
222 | 222 | ||
223 | enum { | ||
224 | NEIGH_ARP_TABLE = 0, | ||
225 | NEIGH_ND_TABLE = 1, | ||
226 | NEIGH_DN_TABLE = 2, | ||
227 | NEIGH_NR_TABLES, | ||
228 | }; | ||
229 | |||
223 | static inline int neigh_parms_family(struct neigh_parms *p) | 230 | static inline int neigh_parms_family(struct neigh_parms *p) |
224 | { | 231 | { |
225 | return p->tbl->family; | 232 | return p->tbl->family; |
@@ -240,8 +247,8 @@ static inline void *neighbour_priv(const struct neighbour *n) | |||
240 | #define NEIGH_UPDATE_F_ISROUTER 0x40000000 | 247 | #define NEIGH_UPDATE_F_ISROUTER 0x40000000 |
241 | #define NEIGH_UPDATE_F_ADMIN 0x80000000 | 248 | #define NEIGH_UPDATE_F_ADMIN 0x80000000 |
242 | 249 | ||
243 | void neigh_table_init(struct neigh_table *tbl); | 250 | void neigh_table_init(int index, struct neigh_table *tbl); |
244 | int neigh_table_clear(struct neigh_table *tbl); | 251 | int neigh_table_clear(int index, struct neigh_table *tbl); |
245 | struct neighbour *neigh_lookup(struct neigh_table *tbl, const void *pkey, | 252 | struct neighbour *neigh_lookup(struct neigh_table *tbl, const void *pkey, |
246 | struct net_device *dev); | 253 | struct net_device *dev); |
247 | struct neighbour *neigh_lookup_nodev(struct neigh_table *tbl, struct net *net, | 254 | struct neighbour *neigh_lookup_nodev(struct neigh_table *tbl, struct net *net, |