[svn-commits] russell: branch 1.4 r88931 - /branches/1.4/include/asterisk/lock.h

SVN commits to the Digium repositories svn-commits at lists.digium.com
Tue Nov 6 07:50:16 CST 2007


Author: russell
Date: Tue Nov  6 07:50:15 2007
New Revision: 88931

URL: http://svn.digium.com/view/asterisk?view=rev&rev=88931
Log:
Remove some checks to see if locks are initialized from the non-DEBUG_THREADS
versions of the lock routines.  These are incorrect for a number of reasons:
 - It breaks the build on mac.
 - If there is a problem with locks not getting initialized, then the proper
   fix is to find that place and fix the code so that it does get initialized.
 - If additional debug code is needed to help find the problem areas, then this
   type of things should _only_ be put in the DEBUG_THREADS wrappers.

Modified:
    branches/1.4/include/asterisk/lock.h

Modified: branches/1.4/include/asterisk/lock.h
URL: http://svn.digium.com/view/asterisk/branches/1.4/include/asterisk/lock.h?view=diff&rev=88931&r1=88930&r2=88931
==============================================================================
--- branches/1.4/include/asterisk/lock.h (original)
+++ branches/1.4/include/asterisk/lock.h Tue Nov  6 07:50:15 2007
@@ -675,11 +675,6 @@
 	int res;
 	pthread_mutexattr_t attr;
 
-#ifdef BSD
-	/* Check for already init'ed mutex for BSD */
-	if (*pmutex != ((pthread_mutex_t) PTHREAD_MUTEX_INITIALIZER))
-		return 0;
-#endif /* BSD */
 	pthread_mutexattr_init(&attr);
 	pthread_mutexattr_settype(&attr, AST_MUTEX_KIND);
 
@@ -692,42 +687,21 @@
 
 static inline int ast_mutex_unlock(ast_mutex_t *pmutex)
 {
-#ifdef BSD
-	/* Check for uninitialized mutex for BSD */
-	if (*pmutex == ((pthread_mutex_t) PTHREAD_MUTEX_INITIALIZER)) {
-		ast_mutex_init(pmutex);
-		return 0;
-	}
-#endif /* BSD */
 	return pthread_mutex_unlock(pmutex);
 }
 
 static inline int ast_mutex_destroy(ast_mutex_t *pmutex)
 {
-#ifdef BSD
-	if (*pmutex == ((pthread_mutex_t) PTHREAD_MUTEX_INITIALIZER))
-		return 0;
-#endif /* BSD */
 	return pthread_mutex_destroy(pmutex);
 }
 
 static inline int ast_mutex_lock(ast_mutex_t *pmutex)
 {
-#ifdef BSD
-	/* Check for uninitialized mutex for BSD */
-	if (*pmutex == ((pthread_mutex_t) PTHREAD_MUTEX_INITIALIZER))
-		ast_mutex_init(pmutex);
-#endif /* BSD */
 	__MTX_PROF(pmutex);
 }
 
 static inline int ast_mutex_trylock(ast_mutex_t *pmutex)
 {
-#ifdef BSD
-	/* Check for uninitialized mutex for BSD */
-	if (*pmutex == ((pthread_mutex_t) PTHREAD_MUTEX_INITIALIZER))
-		ast_mutex_init(pmutex);
-#endif /* BSD */
 	return pthread_mutex_trylock(pmutex);
 }
 
@@ -1037,11 +1011,6 @@
 	int res;
 	pthread_rwlockattr_t attr;
 
-#ifdef BSD
-	/* Check for already init'ed lock for BSD */
-	if (*prwlock != ((ast_rwlock_t) AST_RWLOCK_INIT_VALUE))
-		return 0;
-#endif /* BSD */
 	pthread_rwlockattr_init(&attr);
 
 #ifdef HAVE_PTHREAD_RWLOCK_PREFER_WRITER_NP
@@ -1055,67 +1024,31 @@
 
 static inline int ast_rwlock_destroy(ast_rwlock_t *prwlock)
 {
-#ifdef BSD
-	/* Check for uninitialized mutex for BSD */
-	if (*prwlock == ((ast_rwlock_t) AST_RWLOCK_INIT_VALUE))
-		return 0;
-#endif /* BSD */
 	return pthread_rwlock_destroy(prwlock);
 }
 
 static inline int ast_rwlock_unlock(ast_rwlock_t *prwlock)
 {
-#ifdef BSD
-	/* Check for uninitialized lock for BSD */
-	if (*prwlock == ((ast_rwlock_t) AST_RWLOCK_INIT_VALUE)) {
-		ast_rwlock_init(prwlock);
-		return 0;
-	}
-#endif /* BSD */
 	return pthread_rwlock_unlock(prwlock);
 }
 
 static inline int ast_rwlock_rdlock(ast_rwlock_t *prwlock)
 {
-#ifdef BSD
-	/* Check for uninitialized lock for BSD */
-	if (*prwlock == ((ast_rwlock_t) AST_RWLOCK_INIT_VALUE)) {
-		ast_rwlock_init(prwlock);
-	}
-#endif /* BSD */
 	return pthread_rwlock_rdlock(prwlock);
 }
 
 static inline int ast_rwlock_tryrdlock(ast_rwlock_t *prwlock)
 {
-#ifdef BSD
-	/* Check for uninitialized lock for BSD */
-	if (*prwlock == ((ast_rwlock_t) AST_RWLOCK_INIT_VALUE)) {
-		ast_rwlock_init(prwlock);
-	}
-#endif /* BSD */
 	return pthread_rwlock_tryrdlock(prwlock);
 }
 
 static inline int ast_rwlock_wrlock(ast_rwlock_t *prwlock)
 {
-#ifdef BSD
-	/* Check for uninitialized lock for BSD */
-	if (*prwlock == ((ast_rwlock_t) AST_RWLOCK_INIT_VALUE)) {
-		ast_rwlock_init(prwlock);
-	}
-#endif /* BSD */
 	return pthread_rwlock_wrlock(prwlock);
 }
 
 static inline int ast_rwlock_trywrlock(ast_rwlock_t *prwlock)
 {
-#ifdef BSD 
-	/* Check for uninitialized lock for BSD */
-	if (*prwlock == ((ast_rwlock_t) AST_RWLOCK_INIT_VALUE)) {
-		ast_rwlock_init(prwlock);
-	}
-#endif /* BSD */
 	return pthread_rwlock_trywrlock(prwlock);
 }
 #endif /* !DEBUG_THREADS */




More information about the svn-commits mailing list