diff options
author | russell <russell@f38db490-d61c-443f-a65b-d21fe96a405b> | 2008-12-09 22:25:06 +0000 |
---|---|---|
committer | russell <russell@f38db490-d61c-443f-a65b-d21fe96a405b> | 2008-12-09 22:25:06 +0000 |
commit | 78f46b1cdbb99539fdc690b6fd6b40a293298333 (patch) | |
tree | 019c21417b7704f1a2aa65feb3c1674288a4c52c /main/utils.c | |
parent | 1a9ca96099ea596042c133bb858c7c6d0425b612 (diff) |
Merged revisions 162413 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4
........
r162413 | russell | 2008-12-09 16:17:39 -0600 (Tue, 09 Dec 2008) | 8 lines
Remove the test_for_thread_safety() function completely.
The test is not valid. Besides, if we actually suspected that recursive
mutexes were not working, we would get a ton of LOG_ERROR messages when
DEBUG_THREADS is turned on.
(inspired by a discussion on the asterisk-dev list)
........
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@162414 f38db490-d61c-443f-a65b-d21fe96a405b
Diffstat (limited to 'main/utils.c')
-rw-r--r-- | main/utils.c | 62 |
1 files changed, 0 insertions, 62 deletions
diff --git a/main/utils.c b/main/utils.c index 424504588..71a4dcc00 100644 --- a/main/utils.c +++ b/main/utils.c @@ -226,68 +226,6 @@ struct hostent *ast_gethostbyname(const char *host, struct ast_hostent *hp) return &hp->hp; } - - -AST_MUTEX_DEFINE_STATIC(test_lock); -AST_MUTEX_DEFINE_STATIC(test_lock2); -static pthread_t test_thread; -static int lock_count = 0; -static int test_errors = 0; - -/*! \brief This is a regression test for recursive mutexes. - test_for_thread_safety() will return 0 if recursive mutex locks are - working properly, and non-zero if they are not working properly. */ -static void *test_thread_body(void *data) -{ - ast_mutex_lock(&test_lock); - lock_count += 10; - if (lock_count != 10) - test_errors++; - ast_mutex_lock(&test_lock); - lock_count += 10; - if (lock_count != 20) - test_errors++; - ast_mutex_lock(&test_lock2); - ast_mutex_unlock(&test_lock); - lock_count -= 10; - if (lock_count != 10) - test_errors++; - ast_mutex_unlock(&test_lock); - lock_count -= 10; - ast_mutex_unlock(&test_lock2); - if (lock_count != 0) - test_errors++; - return NULL; -} - -int test_for_thread_safety(void) -{ - ast_mutex_lock(&test_lock2); - ast_mutex_lock(&test_lock); - lock_count += 1; - ast_mutex_lock(&test_lock); - lock_count += 1; - ast_pthread_create(&test_thread, NULL, test_thread_body, NULL); - usleep(100); - if (lock_count != 2) - test_errors++; - ast_mutex_unlock(&test_lock); - lock_count -= 1; - usleep(100); - if (lock_count != 1) - test_errors++; - ast_mutex_unlock(&test_lock); - lock_count -= 1; - if (lock_count != 0) - test_errors++; - ast_mutex_unlock(&test_lock2); - usleep(100); - if (lock_count != 0) - test_errors++; - pthread_join(test_thread, NULL); - return(test_errors); /* return 0 on success. */ -} - /*! \brief Produce 32 char MD5 hash of value. */ void ast_md5_hash(char *output, char *input) { |