Skip to content
Snippets Groups Projects
Commit 673814ea authored by Jeremy McNamara's avatar Jeremy McNamara
Browse files

fix deadlock issues with astmm

git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@1957 65c4cc65-6c06-0410-ace0-fbb531ad65f3
parent f102ce6f
Branches
Tags
No related merge requests found
...@@ -57,6 +57,7 @@ static struct ast_region { ...@@ -57,6 +57,7 @@ static struct ast_region {
(((unsigned long)(a)) % SOME_PRIME) (((unsigned long)(a)) % SOME_PRIME)
static ast_mutex_t reglock = AST_MUTEX_INITIALIZER; 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) 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[]) ...@@ -227,7 +228,7 @@ static int handle_show_memory(int fd, int argc, char *argv[])
fn = argv[3]; fn = argv[3];
/* try to lock applications list ... */ /* try to lock applications list ... */
ast_mutex_lock(&reglock); ast_mutex_lock(&showmemorylock);
for (x=0;x<SOME_PRIME;x++) { for (x=0;x<SOME_PRIME;x++) {
reg = regions[x]; reg = regions[x];
...@@ -241,7 +242,7 @@ static int handle_show_memory(int fd, int argc, char *argv[]) ...@@ -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_cli(fd, "%d bytes allocated %d units total\n", len, count);
ast_mutex_unlock(&reglock); ast_mutex_unlock(&showmemorylock);
return RESULT_SUCCESS; return RESULT_SUCCESS;
} }
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment