add "Mtrie mheap usage" in "show ip fib memory" 61/16761/3
authorLollita Liu <lollita.liu@ericsson.com>
Fri, 11 Jan 2019 10:23:12 +0000 (05:23 -0500)
committerDamjan Marion <dmarion@me.com>
Thu, 24 Jan 2019 16:54:37 +0000 (16:54 +0000)
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>
src/vnet/fib/ip4_fib.c

index 9ad1842..45ccb4f 100644 (file)
@@ -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;
 }