aboutsummaryrefslogtreecommitdiffstats
path: root/src/vnet/adj/adj.h
diff options
context:
space:
mode:
authorBenoît Ganne <bganne@cisco.com>2019-07-18 17:34:28 +0200
committerNeale Ranns <nranns@cisco.com>2019-09-23 09:14:52 +0000
commit138c37af5291e2045075052a4db036be03be4a85 (patch)
tree9023316926f0f62fad94680e31547c07aee08aae /src/vnet/adj/adj.h
parentd51880c5de3a1b22d9ac510305bdfe98fa12e51c (diff)
fib: do not dump no-longer valid adjacencies
In some cases, we can refer to no-longer adjacencies (eg. in traces). Do not dump them in this case as they are probably incorrect (memory can be reused). Type: fix Change-Id: Ib653ba066bb6595ec6ec37d313a3124bce0eeed3 Signed-off-by: Benoît Ganne <bganne@cisco.com>
Diffstat (limited to 'src/vnet/adj/adj.h')
-rw-r--r--src/vnet/adj/adj.h8
1 files changed, 7 insertions, 1 deletions
diff --git a/src/vnet/adj/adj.h b/src/vnet/adj/adj.h
index fb3dc368db0..4c38b041b61 100644
--- a/src/vnet/adj/adj.h
+++ b/src/vnet/adj/adj.h
@@ -432,7 +432,13 @@ extern int adj_per_adj_counters;
static inline ip_adjacency_t *
adj_get (adj_index_t adj_index)
{
- return (vec_elt_at_index(adj_pool, adj_index));
+ return (pool_elt_at_index(adj_pool, adj_index));
+}
+
+static inline int
+adj_is_valid(adj_index_t adj_index)
+{
+ return !(pool_is_free_index(adj_pool, adj_index));
}
/**