fix deadlock issues with astmm
authorJeremy McNamara <jj@nufone.net>
Sun, 11 Jan 2004 22:36:37 +0000 (22:36 +0000)
committerJeremy McNamara <jj@nufone.net>
Sun, 11 Jan 2004 22:36:37 +0000 (22:36 +0000)
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@1957 65c4cc65-6c06-0410-ace0-fbb531ad65f3

astmm.c

diff --git a/astmm.c b/astmm.c
index ad022fa..4738d7a 100755 (executable)
--- a/astmm.c
+++ b/astmm.c
@@ -57,6 +57,7 @@ static struct ast_region {
        (((unsigned long)(a)) % SOME_PRIME)
        
 static ast_mutex_t reglock = AST_MUTEX_INITIALIZER;
+static ast_mutex_t showmemorylock = AST_MUTEX_INITIALIZER;
 
 static inline void *__ast_alloc_region(size_t size, int which, const char *file, int lineno, const char *func)
 {
@@ -227,7 +228,7 @@ static int handle_show_memory(int fd, int argc, char *argv[])
                fn = argv[3];
 
        /* try to lock applications list ... */
-       ast_mutex_lock(&reglock);
+       ast_mutex_lock(&showmemorylock);
 
        for (x=0;x<SOME_PRIME;x++) {
                reg = regions[x];
@@ -241,7 +242,7 @@ static int handle_show_memory(int fd, int argc, char *argv[])
                }
        }
        ast_cli(fd, "%d bytes allocated %d units total\n", len, count);
-       ast_mutex_unlock(&reglock);
+       ast_mutex_unlock(&showmemorylock);
        return RESULT_SUCCESS;
 }