mirror of
https://github.com/Fishwaldo/Star64_linux.git
synced 2025-07-22 23:04:43 +00:00
net: Add ->neigh_lookup() operation to dst_ops
In the future dst entries will be neigh-less. In that environment we need to have an easy transition point for current users of dst->neighbour outside of the packet output fast path. Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
69cce1d140
commit
d3aaeb38c4
8 changed files with 52 additions and 16 deletions
|
@ -116,6 +116,7 @@ static void dn_dst_destroy(struct dst_entry *);
|
|||
static struct dst_entry *dn_dst_negative_advice(struct dst_entry *);
|
||||
static void dn_dst_link_failure(struct sk_buff *);
|
||||
static void dn_dst_update_pmtu(struct dst_entry *dst, u32 mtu);
|
||||
static struct neighbour *dn_dst_neigh_lookup(const struct dst_entry *dst, const void *daddr);
|
||||
static int dn_route_input(struct sk_buff *);
|
||||
static void dn_run_flush(unsigned long dummy);
|
||||
|
||||
|
@ -139,6 +140,7 @@ static struct dst_ops dn_dst_ops = {
|
|||
.negative_advice = dn_dst_negative_advice,
|
||||
.link_failure = dn_dst_link_failure,
|
||||
.update_pmtu = dn_dst_update_pmtu,
|
||||
.neigh_lookup = dn_dst_neigh_lookup,
|
||||
};
|
||||
|
||||
static void dn_dst_destroy(struct dst_entry *dst)
|
||||
|
@ -827,6 +829,11 @@ static unsigned int dn_dst_default_mtu(const struct dst_entry *dst)
|
|||
return dst->dev->mtu;
|
||||
}
|
||||
|
||||
static struct neighbour *dn_dst_neigh_lookup(const struct dst_entry *dst, const void *daddr)
|
||||
{
|
||||
return __neigh_lookup_errno(&dn_neigh_table, daddr, dst->dev);
|
||||
}
|
||||
|
||||
static int dn_rt_set_next_hop(struct dn_route *rt, struct dn_fib_res *res)
|
||||
{
|
||||
struct dn_fib_info *fi = res->fi;
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue