mirror of
https://github.com/asterisk/asterisk.git
synced 2025-11-16 23:08:32 +00:00
main/astobj2: Make REF_DEBUG a menuselect item; improve REF_DEBUG output
This patch does the following:
(1) It makes REF_DEBUG a meneselect item. Enabling REF_DEBUG now enables
REF_DEBUG globally throughout Asterisk.
(2) The ref debug log file is now created in the AST_LOG_DIR directory.
Every run will now blow away the previous run (as large ref files
sometimes caused issues). We now also no longer open/close the file
on each write, instead relying on fflush to make sure data gets written
to the file (in case the ao2 call being performed is about to cause a
crash)
(3) It goes with a comma delineated format for the ref debug file. This
makes parsing much easier. This also now includes the thread ID of the
thread that caused ref change.
(4) A new python script instead for refcounting has been added in the
contrib/scripts folder.
(5) The old refcounter implementation in utils/ has been removed.
Review: https://reviewboard.asterisk.org/r/3377/
........
Merged revisions 412114 from http://svn.asterisk.org/svn/asterisk/branches/1.8
........
Merged revisions 412115 from http://svn.asterisk.org/svn/asterisk/branches/11
........
Merged revisions 412153 from http://svn.asterisk.org/svn/asterisk/branches/12
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@412154 65c4cc65-6c06-0410-ace0-fbb531ad65f3
This commit is contained in:
@@ -230,21 +230,6 @@ ASTERISK_FILE_VERSION(__FILE__, "$Revision$")
|
||||
|
||||
#include "asterisk/network.h"
|
||||
#include "asterisk/paths.h" /* need ast_config_AST_SYSTEM_NAME */
|
||||
/*
|
||||
Uncomment the define below, if you are having refcount related memory leaks.
|
||||
With this uncommented, this module will generate a file, /tmp/refs, which contains
|
||||
a history of the ao2_ref() calls. To be useful, all calls to ao2_* functions should
|
||||
be modified to ao2_t_* calls, and include a tag describing what is happening with
|
||||
enough detail, to make pairing up a reference count increment with its corresponding decrement.
|
||||
The refcounter program in utils/ can be invaluable in highlighting objects that are not
|
||||
balanced, along with the complete history for that object.
|
||||
In normal operation, the macros defined will throw away the tags, so they do not
|
||||
affect the speed of the program at all. They can be considered to be documentation.
|
||||
|
||||
Note: This must also be enabled in channels/sip/security_events.c
|
||||
*/
|
||||
/* #define REF_DEBUG 1 */
|
||||
|
||||
#include "asterisk/lock.h"
|
||||
#include "asterisk/config.h"
|
||||
#include "asterisk/module.h"
|
||||
|
||||
Reference in New Issue
Block a user