summaryrefslogtreecommitdiffstats
path: root/doc
diff options
context:
space:
mode:
authorN Balachandran <nbalacha@redhat.com>2017-12-06 14:23:06 +0530
committerN Balachandran <nbalacha@redhat.com>2017-12-07 14:57:27 +0530
commit47d01546a1826dc14a8331ea8700015f1cfdc4db (patch)
tree5035cc46b488dbf054bf774c4e57965f44bb9c7f /doc
parent36ce4c614a3391043a3417aa061d0aa16e60b2d3 (diff)
core/memacct: save allocs in mem_acct_rec list
With configure --enable-debug, add all object allocations to a list in the corresponding mem_acct_rec. This allows us to see all objects of a particular type and allows for additional debugging in case of memory leaks. This is not compiled in by default and must be explicitly enabled. It is intended to be used by developers. Change-Id: I7cf2dbeadecf994423d7e7591e85f18d2575cce8 BUG: 1522662 Signed-off-by: N Balachandran <nbalacha@redhat.com>
Diffstat (limited to 'doc')
-rw-r--r--doc/debugging/mem-alloc-list.md19
1 files changed, 19 insertions, 0 deletions
diff --git a/doc/debugging/mem-alloc-list.md b/doc/debugging/mem-alloc-list.md
new file mode 100644
index 00000000000..1c68e65d323
--- /dev/null
+++ b/doc/debugging/mem-alloc-list.md
@@ -0,0 +1,19 @@
+## Viewing Memory Allocations
+
+While statedumps provide stats of the number of allocations, size etc for a
+particular mem type, there is no easy way to examine all the allocated objects of that type
+in memory.Being able to view this information could help with determining how an object is used,
+and if there are any memory leaks.
+
+The mem_acct_rec structures have been updated to include lists to which the allocated object is
+added. These can be examined in gdb using simple scripts.
+
+`gdb> plist xl->mem_acct.rec[$type]->obj_list`
+
+will print out the pointers of all allocations of $type.
+
+These changes are primarily targeted at developers and need to enabled
+at compile-time using `configure --enable-debug`.
+
+
+