summaryrefslogtreecommitdiffstats
path: root/src/vnet/fib
diff options
context:
space:
mode:
authorLollita Liu <lollita.liu@ericsson.com>2019-01-11 05:23:12 -0500
committerDamjan Marion <dmarion@me.com>2019-01-24 16:54:37 +0000
commite18b45caeb22b5dfe38b86be6beea55efaecf40d (patch)
tree63c3b98f6187998582a6c3eefc62cd78ba74a657 /src/vnet/fib
parentec595ef02639005b34334097af76b41ceef3dca5 (diff)
add "Mtrie mheap usage" in "show ip fib memory"
Adding "Mtrie mheap usage" in output of "show ip fib memory" command, for displaying the total Mtrie Mheap usage together with memery usage of each node and each table Change-Id: I2bcc570924e44a2b406f69cfc2f2f8d5abb61a39 Signed-off-by: Lollita Liu <lollita.liu@ericsson.com> Signed-off-by: Neale Ranns <nranns@cisco.com>
Diffstat (limited to 'src/vnet/fib')
-rw-r--r--src/vnet/fib/ip4_fib.c11
1 files changed, 9 insertions, 2 deletions
diff --git a/src/vnet/fib/ip4_fib.c b/src/vnet/fib/ip4_fib.c
index 9ad1842dd1a..45ccb4f273d 100644
--- a/src/vnet/fib/ip4_fib.c
+++ b/src/vnet/fib/ip4_fib.c
@@ -643,11 +643,13 @@ ip4_show_fib (vlib_main_t * vm,
if (memory)
{
- uword mtrie_size, hash_size;
+ uword mtrie_size, hash_size, *old_heap;
+
mtrie_size = ip4_fib_mtrie_memory_usage(&fib->mtrie);
hash_size = 0;
+ old_heap = clib_mem_set_heap (ip4_main.mtrie_mheap);
for (i = 0; i < ARRAY_LEN (fib->fib_entry_by_dst_address); i++)
{
uword * hash = fib->fib_entry_by_dst_address[i];
@@ -656,6 +658,8 @@ ip4_show_fib (vlib_main_t * vm,
hash_size += hash_bytes(hash);
}
}
+ clib_mem_set_heap (old_heap);
+
if (verbose)
vlib_cli_output (vm, "%U mtrie:%d hash:%d",
format_fib_table_name, fib->index,
@@ -717,11 +721,14 @@ ip4_show_fib (vlib_main_t * vm,
}));
if (memory)
+ {
vlib_cli_output (vm, "totals: mtrie:%ld hash:%ld all:%ld",
total_mtrie_memory,
total_hash_memory,
total_mtrie_memory + total_hash_memory);
-
+ vlib_cli_output (vm, "\nMtrie Mheap Usage: %U\n",
+ format_mheap, ip4_main.mtrie_mheap, 1);
+ }
return 0;
}