-
Notifications
You must be signed in to change notification settings - Fork 1.2k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
nuttxgdb memory commands performance optimization #14916
nuttxgdb memory commands performance optimization #14916
Commits on Nov 24, 2024
-
Tested on a complex project, results are promising. Command Time cost(s) Time saving(s) Peformance Boost Before After memleak 39.494172 22.366415 17.127757 1.8 memdump 41.872441 26.458386 15.414055 1.6 memdump -a 0x1234 28.116294 1.114119 27.002175 25.2 memdump --no-backtrace N/A 1.114119 memmap 7.973809 6.836468 1.137341 1.2 Signed-off-by: Xu Xingliang <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for d02367a - Browse repository at this point
Copy the full SHA d02367aView commit details -
gdb/mm: move memleak to standalone file
Signed-off-by: xuxingliang <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for c46f85b - Browse repository at this point
Copy the full SHA c46f85bView commit details -
gdb/memdump: show prev and next node in address finding mode
This will make it easier to debug memory corruption when agacent node is corrupted. Signed-off-by: xuxingliang <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 9e4ed65 - Browse repository at this point
Copy the full SHA 9e4ed65View commit details -
mm: dump node overheadp during memdump
Signed-off-by: xuxingliang <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for dd79ab0 - Browse repository at this point
Copy the full SHA dd79ab0View commit details -
gdb/memdump: reorganize the memdump parameters
Make the dump_nodes etc more common to use. Signed-off-by: xuxingliang <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for da12df4 - Browse repository at this point
Copy the full SHA da12df4View commit details -
gdb/memdump: add option to parse memdump log from device
igned-off-by: xuxingliang <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 3d70372 - Browse repository at this point
Copy the full SHA 3d70372View commit details -
gdb/memdump: add option to exclude nodes from specific PID
This is useful to exclude memory nodes for mempool. E.g. (gdb) mm dump --nob --top 5 --sort size --nop --no-pid -1 Pool CNT PID Size Overhead Seqno Address Backtrace H 1 0 16777264 44 13 0x41a79010 H 2 160 1536048 44 1129827490 0x41d6aad0 H 1 45374 1536176 44 1129829080 0x45ef1010 H 3 141 408440 44 145817 0x43905bf0 H 7 158 131120 44 32955 0x4308d090 Total 14 blks, 23528696 bytes (gdb) mm dump --nob --top 5 --sort size --nop Pool CNT PID Size Overhead Seqno Address Backtrace H 1 0 16777264 44 13 0x41a79010 * H 6 -1 1048640 44 116954 0x436a0fd0 * H 5 -1 1048640 44 146821 0x43b24fd0 * H 3 -1 1048640 44 66161 0x4335bfd0 * H 3 -1 1048640 44 156337 0x43d3ffd0 Total 18 blks, 16777264 bytes Signed-off-by: xuxingliang <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 303b802 - Browse repository at this point
Copy the full SHA 303b802View commit details -
gdb/mm: fix memdump when mempool backtrace is disabled
Signed-off-by: xuxingliang <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 10f74df - Browse repository at this point
Copy the full SHA 10f74dfView commit details -
gdb/mm: fix prev free judging and region search
1. The prev free flag should use field size instead of preceding to compare. 2. If not prev-free, then prevnode should be None. 3. Cast type to mm_freenode_s in order to access flink, blink when node is free. 4. Heap itself is also included in first region. Signed-off-by: xuxingliang <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for bda5254 - Browse repository at this point
Copy the full SHA bda5254View commit details -
tools/gdb: avoid direct access to tcb['name']
It could be disabled at compile time. Use utils.get_task_name to handle it Signed-off-by: xuxingliang <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for c3b9054 - Browse repository at this point
Copy the full SHA c3b9054View commit details