Code Review
/
vpp.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
review
|
tree
raw
|
inline
| side by side
FIB: encode the label stack in the FIB path during table dump
[vpp.git]
/
src
/
vnet
/
fib
/
fib_table.c
diff --git
a/src/vnet/fib/fib_table.c
b/src/vnet/fib/fib_table.c
index
f63edaa
..
f46a5b4
100644
(file)
--- a/
src/vnet/fib/fib_table.c
+++ b/
src/vnet/fib/fib_table.c
@@
-885,6
+885,14
@@
fib_table_entry_delete_index (fib_node_index_t fib_entry_index,
fib_entry_index, prefix, source);
}
fib_entry_index, prefix, source);
}
+u32
+fib_table_entry_get_stats_index (u32 fib_index,
+ const fib_prefix_t *prefix)
+{
+ return (fib_entry_get_stats_index(
+ fib_table_lookup_exact_match(fib_index, prefix)));
+}
+
fib_node_index_t
fib_table_entry_local_label_add (u32 fib_index,
const fib_prefix_t *prefix,
fib_node_index_t
fib_table_entry_local_label_add (u32 fib_index,
const fib_prefix_t *prefix,
@@
-1140,7
+1148,6
@@
fib_table_create_and_lock (fib_protocol_t proto,
fib_node_index_t fi;
va_list ap;
fib_node_index_t fi;
va_list ap;
- va_start(ap, fmt);
switch (proto)
{
switch (proto)
{
@@
-1159,6
+1166,8
@@
fib_table_create_and_lock (fib_protocol_t proto,
fib_table = fib_table_get(fi, proto);
fib_table = fib_table_get(fi, proto);
+ va_start(ap, fmt);
+
fib_table->ft_desc = va_format(fib_table->ft_desc, fmt, &ap);
va_end(ap);
fib_table->ft_desc = va_format(fib_table->ft_desc, fmt, &ap);
va_end(ap);
@@
-1261,6
+1270,9
@@
fib_table_lock (u32 fib_index,
fib_table_t *fib_table;
fib_table = fib_table_get(fib_index, proto);
fib_table_t *fib_table;
fib_table = fib_table_get(fib_index, proto);
+
+ ASSERT(fib_table->ft_locks[source] < (0xffff - 1));
+
fib_table->ft_locks[source]++;
fib_table->ft_locks[FIB_TABLE_TOTAL_LOCKS]++;
}
fib_table->ft_locks[source]++;
fib_table->ft_locks[FIB_TABLE_TOTAL_LOCKS]++;
}