Lines Matching refs:neighbour
11 * Harald Welte Add neighbour cache statistics like rtstat
29 #include <net/neighbour.h>
54 static void __neigh_notify(struct neighbour *n, int type, int flags,
56 static void neigh_update_notify(struct neighbour *neigh, u32 nlmsg_pid);
70 It will result in deadlocks, if backend/driver wants to use neighbour
89 not make callbacks to neighbour tables.
92 static int neigh_blackhole(struct neighbour *neigh, struct sk_buff *skb)
98 static void neigh_cleanup_and_release(struct neighbour *neigh)
118 static void neigh_mark_dead(struct neighbour *n)
129 static void neigh_update_gc_list(struct neighbour *n)
158 static void neigh_update_managed_list(struct neighbour *n)
179 static void neigh_update_flags(struct neighbour *neigh, u32 flags, int *notify,
208 static bool neigh_del(struct neighbour *n, struct neighbour __rcu **np,
215 struct neighbour *neigh;
229 bool neigh_remove_one(struct neighbour *ndel, struct neigh_table *tbl)
234 struct neighbour *n;
235 struct neighbour __rcu **np;
258 struct neighbour *n, *tmp;
298 static void neigh_add_timer(struct neighbour *n, unsigned long when)
318 static int neigh_del_timer(struct neighbour *n)
390 struct neighbour *n;
391 struct neighbour __rcu **np = &nht->hash_buckets[i];
411 We must destroy neighbour entry,
469 static struct neighbour *neigh_alloc(struct neigh_table *tbl,
473 struct neighbour *n = NULL;
533 size_t size = (1 << shift) * sizeof(struct neighbour *);
535 struct neighbour __rcu **buckets;
544 buckets = (struct neighbour __rcu **)
565 size_t size = (1 << nht->hash_shift) * sizeof(struct neighbour *);
566 struct neighbour __rcu **buckets = nht->hash_buckets;
592 struct neighbour *n, *next;
618 struct neighbour *neigh_lookup(struct neigh_table *tbl, const void *pkey,
621 struct neighbour *n;
638 static struct neighbour *
644 struct neighbour *n1, *rc, *n;
734 struct neighbour *__neigh_create(struct neigh_table *tbl, const void *pkey,
886 * neighbour must already be out of the table;
889 void neigh_destroy(struct neighbour *neigh)
896 pr_warn("Destroying alive neighbour %p\n", neigh);
927 static void neigh_suspect(struct neighbour *neigh)
939 static void neigh_connect(struct neighbour *neigh)
949 struct neighbour *n;
950 struct neighbour __rcu **np;
1033 static __inline__ int neigh_max_probes(struct neighbour *n)
1041 static void neigh_invalidate(struct neighbour *neigh)
1052 routine. Particularly, it can hit the same neighbour entry!
1066 static void neigh_probe(struct neighbour *neigh)
1080 /* Called when a timer expires for a neighbour entry. */
1085 struct neighbour *neigh = from_timer(neigh, t, timer);
1171 int __neigh_event_send(struct neighbour *neigh, struct sk_buff *skb,
1259 static void neigh_update_hhs(struct neighbour *neigh)
1292 NEIGH_UPDATE_F_ISROUTER indicates if the neighbour is known as
1297 static int __neigh_update(struct neighbour *neigh, const u8 *lladdr,
1372 /* Update confirmed timestamp for neighbour entry after we
1400 * neighbour entry. Otherwise we risk to move the locktime window with
1443 struct neighbour *n2, *n1 = neigh;
1485 int neigh_update(struct neighbour *neigh, const u8 *lladdr, u8 new,
1495 void __neigh_set_probe_once(struct neighbour *neigh)
1510 struct neighbour *neigh_event_ns(struct neigh_table *tbl,
1514 struct neighbour *neigh = __neigh_lookup(tbl, saddr, dev,
1524 static void neigh_hh_init(struct neighbour *n)
1543 int neigh_resolve_output(struct neighbour *neigh, struct sk_buff *skb)
1578 int neigh_connected_output(struct neighbour *neigh, struct sk_buff *skb)
1601 int neigh_direct_output(struct neighbour *neigh, struct sk_buff *skb)
1611 struct neighbour *neigh;
1792 panic("cannot create neighbour cache statistics");
1797 panic("cannot create neighbour proc dir entry");
1806 panic("cannot allocate neighbour cache hashes");
1809 tbl->entry_size = ALIGN(offsetof(struct neighbour, primary_key) +
1843 pr_crit("neighbour leakage\n");
1901 struct neighbour *neigh;
1969 struct neighbour *neigh;
2562 static int neigh_fill_info(struct sk_buff *skb, struct neighbour *neigh,
2664 static void neigh_update_notify(struct neighbour *neigh, u32 nlmsg_pid)
2709 struct neighbour *n;
2974 static int neigh_get_reply(struct net *net, struct neighbour *neigh,
3030 struct neighbour *neigh;
3059 NL_SET_ERR_MSG(extack, "Proxy neighbour entry not found");
3085 void neigh_for_each(struct neigh_table *tbl, void (*cb)(struct neighbour *, void *), void *cookie)
3095 struct neighbour *n;
3109 int (*cb)(struct neighbour *))
3117 struct neighbour *n;
3118 struct neighbour __rcu **np;
3148 struct neighbour *neigh;
3188 static struct neighbour *neigh_get_first(struct seq_file *seq)
3193 struct neighbour *n = NULL;
3227 static struct neighbour *neigh_get_next(struct seq_file *seq,
3228 struct neighbour *n,
3275 static struct neighbour *neigh_get_idx(struct seq_file *seq, loff_t *pos)
3277 struct neighbour *n = neigh_get_first(seq);
3507 static void __neigh_notify(struct neighbour *n, int type, int flags,
3532 void neigh_app_ns(struct neighbour *n)
3834 * applied after the next neighbour update instead of waiting for