Removed recursive mutexes
authorAlan T. DeKok <aland@freeradius.org>
Fri, 30 Oct 2009 00:35:53 +0000 (20:35 -0400)
committerAlan T. DeKok <aland@freeradius.org>
Fri, 30 Oct 2009 00:35:53 +0000 (20:35 -0400)
src/main/event.c

index d23c246..92af64a 100644 (file)
@@ -3444,8 +3444,6 @@ int radius_event_init(CONF_SECTION *cs, int spawn_flag)
 
 #ifdef WITH_PROXY
        if (mainconfig.proxy_requests) {
-               pthread_mutexattr_t attr;
-
                /*
                 *      Create the tree for managing proxied requests and
                 *      responses.
@@ -3454,23 +3452,11 @@ int radius_event_init(CONF_SECTION *cs, int spawn_flag)
                if (!proxy_list) return 0;
 
 #ifdef HAVE_PTHREAD_H
-               pthread_mutexattr_init(&attr);
-
-#ifdef PTHREAD_MUTEX_RECURSIVE
-               if (pthread_mutexattr_settype(&attr, PTHREAD_MUTEX_RECURSIVE) < 0) {
-                       radlog(L_ERR, "FATAL: Failed to set type for proxy mutex: %s",
-                              strerror(errno));
-                       exit(1);
-               }
-#endif
-
                if (pthread_mutex_init(&proxy_mutex, NULL) != 0) {
                        radlog(L_ERR, "FATAL: Failed to initialize proxy mutex: %s",
                               strerror(errno));
                        exit(1);
                }
-
-               pthread_mutexattr_destroy(&attr);
 #endif
        }
 #endif
@@ -3665,9 +3651,7 @@ void radius_event_free(void)
         *      referenced from anywhere else.  Remove them first.
         */
        if (proxy_list) {
-               PTHREAD_MUTEX_LOCK(&proxy_mutex);
                fr_packet_list_walk(proxy_list, NULL, proxy_hash_cb);
-               PTHREAD_MUTEX_UNLOCK(&proxy_mutex);
                fr_packet_list_free(proxy_list);
                proxy_list = NULL;
        }