]> git.ipfire.org Git - thirdparty/openldap.git/commitdiff
ITS#8772 Remove type distinction for recursive mutexes
authorOndřej Kuzník <ondra@openldap.org>
Fri, 22 Jun 2018 13:01:19 +0000 (14:01 +0100)
committerOndřej Kuzník <ondra@openldap.org>
Fri, 19 Oct 2018 12:08:10 +0000 (13:08 +0100)
include/ldap_int_thread.h
include/ldap_pvt_thread.h
libraries/libldap_r/thr_nt.c
libraries/libldap_r/thr_posix.c
libraries/libldap_r/thr_pth.c
libraries/libldap_r/thr_stub.c
libraries/libldap_r/thr_thr.c

index f3fb39fb16eac9ace4364b6a475fc407b7c615ed..ccf16e5047fb05d7e158f01ab41865aba88b06f3 100644 (file)
@@ -44,9 +44,7 @@ LDAP_END_DECL
 
 LDAP_BEGIN_DECL
 
-#define LDAP_THREAD_HAVE_NATIVE_RECURSIVE_MUTEX
 typedef pthread_t              ldap_int_thread_t;
-typedef pthread_mutex_t                ldap_int_thread_mutex_recursive_t;
 typedef pthread_mutex_t                ldap_int_thread_mutex_t;
 typedef pthread_cond_t         ldap_int_thread_cond_t;
 typedef pthread_key_t          ldap_int_thread_key_t;
@@ -93,9 +91,7 @@ LDAP_END_DECL
 
 LDAP_BEGIN_DECL
 
-#define LDAP_THREAD_HAVE_NATIVE_RECURSIVE_MUTEX
 typedef pth_t          ldap_int_thread_t;
-typedef pth_mutex_t    ldap_int_thread_mutex_recursive_t;
 typedef pth_mutex_t    ldap_int_thread_mutex_t;
 typedef pth_cond_t     ldap_int_thread_cond_t;
 typedef pth_key_t      ldap_int_thread_key_t;
@@ -124,9 +120,7 @@ LDAP_END_DECL
 
 LDAP_BEGIN_DECL
 
-#define LDAP_THREAD_HAVE_NATIVE_RECURSIVE_MUTEX
 typedef thread_t               ldap_int_thread_t;
-typedef mutex_t                        ldap_int_thread_mutex_recursive_t;
 typedef mutex_t                        ldap_int_thread_mutex_t;
 typedef cond_t                 ldap_int_thread_cond_t;
 typedef thread_key_t   ldap_int_thread_key_t;
@@ -157,9 +151,7 @@ typedef thread_key_t        ldap_int_thread_key_t;
 
 LDAP_BEGIN_DECL
 
-#define LDAP_THREAD_HAVE_NATIVE_RECURSIVE_MUTEX
 typedef unsigned long  ldap_int_thread_t;
-typedef HANDLE ldap_int_thread_mutex_recursive_t;
 typedef HANDLE ldap_int_thread_mutex_t;
 typedef HANDLE ldap_int_thread_cond_t;
 typedef DWORD  ldap_int_thread_key_t;
@@ -186,9 +178,7 @@ LDAP_END_DECL
 
 LDAP_BEGIN_DECL
 
-#define LDAP_THREAD_HAVE_NATIVE_RECURSIVE_MUTEX
 typedef int                    ldap_int_thread_t;
-typedef int                    ldap_int_thread_mutex_recursive_t;
 typedef int                    ldap_int_thread_mutex_t;
 typedef int                    ldap_int_thread_cond_t;
 typedef int                    ldap_int_thread_key_t;
index 1a711e8c8d0fe53f6deb6fa1420a6a4ebe28a41f..8cf265fc9275647221facb9e6e821d4a72da4887 100644 (file)
@@ -37,7 +37,6 @@ typedef ldap_int_thread_rdwr_t                ldap_pvt_thread_rdwr_t;
 #define LDAP_PVT_MUTEX_FIRSTCREATE     LDAP_INT_MUTEX_FIRSTCREATE
 #define LDAP_PVT_MUTEX_NULL                    LDAP_INT_MUTEX_NULL
 #endif
-typedef ldap_int_thread_mutex_recursive_t ldap_pvt_thread_mutex_recursive_t;
 typedef ldap_int_thread_rmutex_t       ldap_pvt_thread_rmutex_t;
 typedef ldap_int_thread_key_t  ldap_pvt_thread_key_t;
 #endif /* !LDAP_PVT_THREAD_H_DONE */
@@ -118,9 +117,6 @@ ldap_pvt_thread_mutex_recursive_init LDAP_P(( ldap_pvt_thread_mutex_t *mutex ));
 LDAP_F( int )
 ldap_pvt_thread_mutex_destroy LDAP_P(( ldap_pvt_thread_mutex_t *mutex ));
 
-LDAP_F( int )
-ldap_pvt_thread_mutex_recursive_destroy LDAP_P(( ldap_pvt_thread_mutex_recursive_t *mutex ));
-
 LDAP_F( int )
 ldap_pvt_thread_mutex_lock LDAP_P(( ldap_pvt_thread_mutex_t *mutex ));
 
@@ -130,15 +126,6 @@ ldap_pvt_thread_mutex_trylock LDAP_P(( ldap_pvt_thread_mutex_t *mutex ));
 LDAP_F( int )
 ldap_pvt_thread_mutex_unlock LDAP_P(( ldap_pvt_thread_mutex_t *mutex ));
 
-LDAP_F( int )
-ldap_pvt_thread_mutex_recursive_lock LDAP_P(( ldap_pvt_thread_mutex_recursive_t *mutex ));
-
-LDAP_F( int )
-ldap_pvt_thread_mutex_recursive_trylock LDAP_P(( ldap_pvt_thread_mutex_recursive_t *mutex ));
-
-LDAP_F( int )
-ldap_pvt_thread_mutex_recursive_unlock LDAP_P(( ldap_pvt_thread_mutex_recursive_t *mutex ));
-
 LDAP_F( int )
 ldap_pvt_thread_rmutex_init LDAP_P(( ldap_pvt_thread_rmutex_t *rmutex ));
 
index b8c9b5c0bf747e01f07c5cb19c6d563baf789283..bab57bcad348f0dc8862ef0a4b89abad7bf719dc 100644 (file)
@@ -161,6 +161,13 @@ ldap_pvt_thread_mutex_init( ldap_pvt_thread_mutex_t *mutex )
        return ( 0 );
 }
 
+int
+ldap_pvt_thread_mutex_recursive_init( ldap_pvt_thread_mutex_t *mutex )
+{
+       /* All NT mutexes are recursive */
+       return ldap_pvt_thread_mutex_init( mutex );
+}
+
 int 
 ldap_pvt_thread_mutex_destroy( ldap_pvt_thread_mutex_t *mutex )
 {
@@ -192,17 +199,6 @@ ldap_pvt_thread_mutex_trylock( ldap_pvt_thread_mutex_t *mp )
                ? -1 : 0;
 }
 
-int ldap_pvt_thread_mutex_recursive_init( ldap_pvt_thread_mutex_recursive_t *mutex )
-       LDAP_GCCATTR((alias("ldap_pvt_thread_mutex_init")));
-int ldap_pvt_thread_mutex_recursive_destroy( ldap_pvt_thread_mutex_recursive_t *mutex )
-       LDAP_GCCATTR((alias("ldap_pvt_thread_mutex_destroy")));
-int ldap_pvt_thread_mutex_recursive_lock( ldap_pvt_thread_mutex_recursive_t *mutex )
-       LDAP_GCCATTR((alias("ldap_pvt_thread_mutex_lock")));
-int ldap_pvt_thread_mutex_recursive_trylock( ldap_pvt_thread_mutex_recursive_t *mutex )
-       LDAP_GCCATTR((alias("ldap_pvt_thread_mutex_trylock")));
-int ldap_pvt_thread_mutex_recursive_unlock( ldap_pvt_thread_mutex_recursive_t *mutex )
-       LDAP_GCCATTR((alias("ldap_pvt_thread_mutex_unlock")));
-
 ldap_pvt_thread_t
 ldap_pvt_thread_self( void )
 {
index 66a6ba62c84acc59fd7fc81f290b024c7dad9187..e4569215fb1dab3aac8377d0a35e3b3abe5fc937 100644 (file)
@@ -325,15 +325,6 @@ ldap_pvt_thread_mutex_recursive_init( ldap_pvt_thread_mutex_t *mutex )
        return ERRVAL( pthread_mutex_init( mutex, &mutex_attr_recursive ) );
 }
 
-int ldap_pvt_thread_mutex_recursive_destroy( ldap_pvt_thread_mutex_recursive_t *mutex )
-       LDAP_GCCATTR((alias("ldap_pvt_thread_mutex_destroy")));
-int ldap_pvt_thread_mutex_recursive_lock( ldap_pvt_thread_mutex_recursive_t *mutex )
-       LDAP_GCCATTR((alias("ldap_pvt_thread_mutex_lock")));
-int ldap_pvt_thread_mutex_recursive_trylock( ldap_pvt_thread_mutex_recursive_t *mutex )
-       LDAP_GCCATTR((alias("ldap_pvt_thread_mutex_trylock")));
-int ldap_pvt_thread_mutex_recursive_unlock( ldap_pvt_thread_mutex_recursive_t *mutex )
-       LDAP_GCCATTR((alias("ldap_pvt_thread_mutex_unlock")));
-
 ldap_pvt_thread_t ldap_pvt_thread_self( void )
 {
        return pthread_self();
index d0bcc4736270c40f6c67d30d43ccc5a097826c5c..cd219e76e92c8fddb9cb99bc5ee20ce5fcd97622 100644 (file)
@@ -160,17 +160,6 @@ ldap_pvt_thread_mutex_trylock( ldap_pvt_thread_mutex_t *mutex )
        return( pth_mutex_acquire( mutex, 1, NULL ) ? 0 : errno );
 }
 
-int ldap_pvt_thread_mutex_recursive_init( ldap_pvt_thread_mutex_recursive_t *mutex )
-       LDAP_GCCATTR((alias("ldap_pvt_thread_mutex_init")));
-int ldap_pvt_thread_mutex_recursive_destroy( ldap_pvt_thread_mutex_recursive_t *mutex )
-       LDAP_GCCATTR((alias("ldap_pvt_thread_mutex_destroy")));
-int ldap_pvt_thread_mutex_recursive_lock( ldap_pvt_thread_mutex_recursive_t *mutex )
-       LDAP_GCCATTR((alias("ldap_pvt_thread_mutex_lock")));
-int ldap_pvt_thread_mutex_recursive_trylock( ldap_pvt_thread_mutex_recursive_t *mutex )
-       LDAP_GCCATTR((alias("ldap_pvt_thread_mutex_trylock")));
-int ldap_pvt_thread_mutex_recursive_unlock( ldap_pvt_thread_mutex_recursive_t *mutex )
-       LDAP_GCCATTR((alias("ldap_pvt_thread_mutex_unlock")));
-
 ldap_pvt_thread_t
 ldap_pvt_thread_self( void )
 {
index a037965c6b8d6b7ae19028a371b1e4fe0f6b91f1..399e81a161b3e6ce59489b86f5fdf6924137a233 100644 (file)
@@ -150,17 +150,6 @@ ldap_pvt_thread_mutex_unlock( ldap_pvt_thread_mutex_t *mutex )
        return 0;
 }
 
-int ldap_pvt_thread_mutex_recursive_init( ldap_pvt_thread_mutex_recursive_t *mutex )
-       LDAP_GCCATTR((alias("ldap_pvt_thread_mutex_init")));
-int ldap_pvt_thread_mutex_recursive_destroy( ldap_pvt_thread_mutex_recursive_t *mutex )
-       LDAP_GCCATTR((alias("ldap_pvt_thread_mutex_destroy")));
-int ldap_pvt_thread_mutex_recursive_lock( ldap_pvt_thread_mutex_recursive_t *mutex )
-       LDAP_GCCATTR((alias("ldap_pvt_thread_mutex_lock")));
-int ldap_pvt_thread_mutex_recursive_trylock( ldap_pvt_thread_mutex_recursive_t *mutex )
-       LDAP_GCCATTR((alias("ldap_pvt_thread_mutex_trylock")));
-int ldap_pvt_thread_mutex_recursive_unlock( ldap_pvt_thread_mutex_recursive_t *mutex )
-       LDAP_GCCATTR((alias("ldap_pvt_thread_mutex_unlock")));
-
 /*
  * NO_THREADS requires a separate tpool implementation since
  * generic ldap_pvt_thread_pool_wrapper loops forever.
index 74e39e00682638c38916607449b2e2f97ff44930..2b73528d73f766865522fa6bf1ccab616af9aeb1 100644 (file)
@@ -154,20 +154,11 @@ ldap_pvt_thread_mutex_trylock( ldap_pvt_thread_mutex_t *mp )
 }
 
 int
-ldap_pvt_thread_mutex_recursive_init( ldap_pvt_thread_mutex_recursive_t *mutex )
+ldap_pvt_thread_mutex_recursive_init( ldap_pvt_thread_mutex_t *mutex )
 {
        return( mutex_init( mutex, USYNC_THREAD | LOCK_RECURSIVE, NULL ) );
 }
 
-int ldap_pvt_thread_mutex_recursive_destroy( ldap_pvt_thread_mutex_recursive_t *mutex )
-       LDAP_GCCATTR((alias("ldap_pvt_thread_mutex_destroy")));
-int ldap_pvt_thread_mutex_recursive_lock( ldap_pvt_thread_mutex_recursive_t *mutex )
-       LDAP_GCCATTR((alias("ldap_pvt_thread_mutex_lock")));
-int ldap_pvt_thread_mutex_recursive_trylock( ldap_pvt_thread_mutex_recursive_t *mutex )
-       LDAP_GCCATTR((alias("ldap_pvt_thread_mutex_trylock")));
-int ldap_pvt_thread_mutex_recursive_unlock( ldap_pvt_thread_mutex_recursive_t *mutex )
-       LDAP_GCCATTR((alias("ldap_pvt_thread_mutex_unlock")));
-
 ldap_pvt_thread_t
 ldap_pvt_thread_self( void )
 {