summaryrefslogtreecommitdiff
path: root/lib/memory_vty.c
diff options
context:
space:
mode:
authorLou Berger <lberger@labn.net>2018-08-28 16:54:07 -0400
committerLou Berger <lberger@labn.net>2018-08-28 19:22:30 -0400
commit13f1ba41a12a1a5298b0fb0021895284990aaf70 (patch)
treefcc0d85f8c5cc45ecf4296d6808bb9263db42a8c /lib/memory_vty.c
parent96487ee47875a8d47590e17343a4b373ef5adf9d (diff)
lib: qmem show changes (header and max)
add header to show qmem, align table with headers add tracking of max # allocs and max bytes alloc'ed Signed-off-by: Lou Berger <lberger@labn.net>
Diffstat (limited to 'lib/memory_vty.c')
-rw-r--r--lib/memory_vty.c30
1 files changed, 24 insertions, 6 deletions
diff --git a/lib/memory_vty.c b/lib/memory_vty.c
index 9ee2e52ec7..73a18529a2 100644
--- a/lib/memory_vty.c
+++ b/lib/memory_vty.c
@@ -73,27 +73,45 @@ static int show_memory_mallinfo(struct vty *vty)
static int qmem_walker(void *arg, struct memgroup *mg, struct memtype *mt)
{
struct vty *vty = arg;
- if (!mt)
+ if (!mt) {
vty_out(vty, "--- qmem %s ---\n", mg->name);
- else {
+ vty_out(vty, "%-30s: %8s %-8s%s %8s %9s\n",
+ "Type", "Current#", " Size",
+#ifdef HAVE_MALLOC_USABLE_SIZE
+ " Total",
+#else
+ "",
+#endif
+ "Max#",
+#ifdef HAVE_MALLOC_USABLE_SIZE
+ "MaxBytes"
+#else
+ ""
+#endif
+ );
+ } else {
if (mt->n_alloc != 0) {
char size[32];
snprintf(size, sizeof(size), "%6zu", mt->size);
-
#ifdef HAVE_MALLOC_USABLE_SIZE
#define TSTR " %9zu"
#define TARG , mt->total
+#define TARG2 , mt->max_size
#else
#define TSTR ""
#define TARG
+#define TARG2
#endif
- vty_out(vty, "%-30s: %10zu %-16s"TSTR"\n", mt->name,
+ vty_out(vty, "%-30s: %8zu %-8s"TSTR" %8zu"TSTR"\n",
+ mt->name,
mt->n_alloc,
mt->size == 0 ? ""
: mt->size == SIZE_VAR
- ? "(variably sized)"
+ ? "variable"
: size
- TARG);
+ TARG,
+ mt->n_max
+ TARG2);
}
}
return 0;