diff --git a/include/asterisk/lock.h b/include/asterisk/lock.h index cea5d06a17..39af897361 100755 --- a/include/asterisk/lock.h +++ b/include/asterisk/lock.h @@ -396,6 +396,10 @@ static inline int __ast_cond_wait(const char *filename, int lineno, const char * #endif } + if (t->reentrancy) + __ast_mutex_logger("%s line %d (%s): mutex '%s' locked more than once, cond_wait will block!\n", + filename, lineno, func, mutex_name); + if (--t->reentrancy < 0) { __ast_mutex_logger("%s line %d (%s): mutex '%s' freed more times than we've locked!\n", filename, lineno, func, mutex_name); @@ -455,6 +459,10 @@ static inline int __ast_cond_timedwait(const char *filename, int lineno, const c #endif } + if (t->reentrancy) + __ast_mutex_logger("%s line %d (%s): mutex '%s' locked more than once, cond_timedwait will block!\n", + filename, lineno, func, mutex_name); + if (--t->reentrancy < 0) { __ast_mutex_logger("%s line %d (%s): mutex '%s' freed more times than we've locked!\n", filename, lineno, func, mutex_name);