mirror of
				https://github.com/asterisk/asterisk.git
				synced 2025-10-31 02:37:10 +00:00 
			
		
		
		
	A new feature thanks to the fine folks at Switchvox!
If a deadlock is detected, then the typical lock information will be printed along with a backtrace of the stack for the offending threads. Use of this requires compiling with DETECT_DEADLOCKS and having glibc installed. Furthermore, issuing the "core show locks" CLI command will print the normal lock information as well as a backtraces for each lock. This requires that DEBUG_THREADS is enabled and that glibc is installed. All the backtrace features may be disabled by running the configure script with --without-execinfo as an argument git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@118173 65c4cc65-6c06-0410-ace0-fbb531ad65f3
This commit is contained in:
		| @@ -705,7 +705,16 @@ unsigned int ast_hashtab_hash_contexts(const void *obj) | ||||
| void ast_mark_lock_acquired(void *lock_addr) | ||||
| { | ||||
| } | ||||
| #ifdef HAVE_BKTR | ||||
| void ast_remove_lock_info(void *lock_addr, struct ast_bt *bt) | ||||
| { | ||||
| } | ||||
|  | ||||
| void ast_store_lock_info(enum ast_lock_type type, const char *filename, | ||||
| 	int line_num, const char *func, const char *lock_name, void *lock_addr, struct ast_bt *bt) | ||||
| { | ||||
| } | ||||
| #else | ||||
| void ast_remove_lock_info(void *lock_addr) | ||||
| { | ||||
| } | ||||
| @@ -714,5 +723,6 @@ void ast_store_lock_info(enum ast_lock_type type, const char *filename, | ||||
| 	int line_num, const char *func, const char *lock_name, void *lock_addr) | ||||
| { | ||||
| } | ||||
| #endif | ||||
| #endif | ||||
| #endif /* HAVE_BKTR */ | ||||
| #endif /* !defined(LOW_MEMORY) */ | ||||
| #endif /* DEBUG_THREADS */ | ||||
|   | ||||
		Reference in New Issue
	
	Block a user