[svn-commits] irroot: branch irroot/asterisk-trunk-quack-queue r342982 - /team/irroot/aster...

SVN commits to the Digium repositories svn-commits at lists.digium.com
Wed Nov 2 00:45:40 CDT 2011


Author: irroot
Date: Wed Nov  2 00:45:37 2011
New Revision: 342982

URL: http://svnview.digium.com/svn/asterisk?view=rev&rev=342982
Log:
Removed defines for internal ao2 funcs they were not used consistantly.


Modified:
    team/irroot/asterisk-trunk-quack-queue/apps/app_queue.c

Modified: team/irroot/asterisk-trunk-quack-queue/apps/app_queue.c
URL: http://svnview.digium.com/svn/asterisk/team/irroot/asterisk-trunk-quack-queue/apps/app_queue.c?view=diff&rev=342982&r1=342981&r2=342982
==============================================================================
--- team/irroot/asterisk-trunk-quack-queue/apps/app_queue.c (original)
+++ team/irroot/asterisk-trunk-quack-queue/apps/app_queue.c Wed Nov  2 00:45:37 2011
@@ -99,9 +99,6 @@
 #include "asterisk/callerid.h"
 #include "asterisk/cel.h"
 #include "asterisk/data.h"
-
-/* Define, to debug reference counts on queues, without debugging reference counts on queue members */
-/* #define REF_DEBUG_ONLY_QUEUES */
 
 /*!
  * \par Please read before modifying this file.
@@ -1331,31 +1328,6 @@
 	return !strcasecmp(d->state_interface, iface) ? CMP_MATCH | CMP_STOP : 0;
 }
 
-#ifdef REF_DEBUG_ONLY_QUEUES
-#define queue_ref(a)	__ao2_ref_debug(a,1,"",__FILE__,__LINE__,__PRETTY_FUNCTION__)
-#define queue_unref(a)	__ao2_ref_debug(a,-1,"",__FILE__,__LINE__,__PRETTY_FUNCTION__)
-#define queue_t_ref(a,b)	__ao2_ref_debug(a,1,b,__FILE__,__LINE__,__PRETTY_FUNCTION__)
-#define queue_t_unref(a,b)	__ao2_ref_debug(a,-1,b,__FILE__,__LINE__,__PRETTY_FUNCTION__)
-#define queues_t_link(c,q,tag)	__ao2_link_debug(c,q,tag,__FILE__,__LINE__,__PRETTY_FUNCTION__)
-#define queues_t_unlink(c,q,tag)	__ao2_unlink_debug(c,q,tag,__FILE__,__LINE__,__PRETTY_FUNCTION__)
-#else
-#define queue_t_ref(a,b)	queue_ref(a)
-#define queue_t_unref(a,b)	queue_unref(a)
-#define queues_t_link(c,q,tag)	ao2_t_link(c,q,tag)
-#define queues_t_unlink(c,q,tag)	ao2_t_unlink(c,q,tag)
-static inline struct call_queue *queue_ref(struct call_queue *q)
-{
-        ao2_ref(q, 1);
-        return q;
-}
-
-static inline struct call_queue *queue_unref(struct call_queue *q)
-{
-        ao2_ref(q, -1);
-        return NULL;
-}
-#endif
-
 /*! \brief Set variables of queue */
 static void set_queue_variables(struct call_queue *q, struct ast_channel *chan)
 {
@@ -1400,7 +1372,7 @@
 	/* every queue_ent must have a reference to it's parent call_queue, this
 	 * reference does not go away until the end of the queue_ent's life, meaning
 	 * that even when the queue_ent leaves the call_queue this ref must remain. */
-	queue_ref(q);
+	ao2_ref(q, 1);
 	new->parent = q;
 	new->pos = ++(*pos);
 	new->opos = *pos;
@@ -2439,7 +2411,7 @@
 
 	if ((q = ao2_t_alloc(sizeof(*q), destroy_queue, "Allocate queue"))) {
 		if (ast_string_field_init(q, 64)) {
-			queue_t_unref(q, "String field allocation failed");
+			ao2_t_ref(q, -1, "String field allocation failed");
 			return NULL;
 		}
 		ast_string_field_set(q, name, queuename);
@@ -2546,8 +2518,8 @@
 			   found condition... So we might delete an in-core queue
 			   in case of DB failure. */
 			ast_debug(1, "Queue %s not found in realtime.\n", queuename);
-			queues_t_unlink(queues, q, "Unused; removing from container");
-			queue_t_unref(q, "Queue is dead; can't return it");
+			ao2_t_unlink(queues, q, "Unused; removing from container");
+			ao2_t_ref(q, -1, "Queue is dead; can't return it");
 		}
 		return NULL;
 	}
@@ -2641,7 +2613,7 @@
 				!ast_strlen_zero(queuename);
 				queuename = ast_category_browse(cfg, queuename)) {
 			if ((queue = load_realtime_queue(queuename, rmask))) {
-				queue_unref(queue);
+				ao2_ref(queue, -1);
 			}
 		}
 		ast_config_destroy(cfg);
@@ -2666,7 +2638,7 @@
 	    (get_member_status(q, qe->max_penalty, qe->min_penalty, q->joinempty))) {
 		*reason = QUEUE_JOINEMPTY;
 		ao2_unlock(q);
-		queue_t_unref(q, "Done with realtime queue");
+		ao2_t_ref(q, -1, "Done with realtime queue");
 		return res;
 	}
 	if (*reason == QUEUE_UNKNOWN && q->maxlen && (q->count >= q->maxlen)) {
@@ -2728,7 +2700,7 @@
 		ast_debug(1, "Queue '%s' Join, Channel '%s', Position '%d'\n", q->name, qe->chan->name, qe->pos );
 	}
 	ao2_unlock(q);
-	queue_t_unref(q, "Done with realtime queue");
+	ao2_t_ref(q, -1, "Done with realtime queue");
 
 	return res;
 }
@@ -2987,7 +2959,7 @@
 	if (!(q = qe->parent)) {
 		return;
 	}
-	queue_t_ref(q, "Copy queue pointer from queue entry");
+	ao2_t_ref(q, 1, "Copy queue pointer from queue entry");
 	ao2_lock(q);
 
 	prev = NULL;
@@ -3018,7 +2990,7 @@
 		}
 	}
 	ao2_unlock(q);
-	queue_t_unref(q, "Expire copied reference");
+	ao2_t_ref(q, -1, "Expire copied reference");
 }
 
 /*!
@@ -3153,7 +3125,7 @@
 	queue_iter = ao2_iterator_init(queues, 0);
 	while ((q = ao2_t_iterator_next(&queue_iter, "Iterate through queues"))) {
 		if (q == rq) { /* don't check myself, could deadlock */
-			queue_t_unref(q, "Done with iterator");
+			ao2_t_ref(q, -1, "Done with iterator");
 			continue;
 		}
 
@@ -4332,7 +4304,7 @@
 				ao2_ref(mem, -1);
 				ao2_unlock(mem);
 			}
-			queue_t_unref(qtmp, "Done with iterator");
+			ao2_t_ref(qtmp, -1, "Done with iterator");
 		}
 		ao2_iterator_destroy(&queue_iter);
 	} else {
@@ -4605,7 +4577,7 @@
 	if (ao2_ref(qeb, -1) == 1) {
 		set_queue_variables(q, chan);
 		/* This unrefs the reference we made in try_calling when we allocated qeb */
-		queue_t_unref(q, "Expire bridge_config reference");
+		ao2_t_ref(q, -1, "Expire bridge_config reference");
 	}
 }
 
@@ -5421,7 +5393,7 @@
 			 * to make sure to increase the refcount of this queue so it cannot be freed until we
 			 * are done with it. We remove this reference in end_bridge_callback.
 			 */
-			queue_t_ref(qe->parent, "For bridge_config reference");
+			ao2_t_ref(qe->parent, 1, "For bridge_config reference");
 		}
 
 		time(&callstart);
@@ -5724,7 +5696,7 @@
 			ao2_unlock(mem);
 			ao2_ref(mem, -1);
 		}
-		queue_t_unref(q, "Done with iterator");
+		ao2_t_ref(q, -1, "Done with iterator");
 	}
 	ao2_iterator_destroy(&queue_iter);
 
@@ -6418,7 +6390,8 @@
 		/* every queue_ent is given a reference to it's parent call_queue when it joins the queue.
 		 * This ref must be taken away right before the queue_ent is destroyed.  In this case
 		 * the queue_ent is about to be returned on the stack */
-		qe.parent = queue_unref(qe.parent);
+		ao2_ref(qe.parent, -1);
+		qe.parent = NULL;
 	}
 
 	return res;
@@ -6460,7 +6433,7 @@
 		}
 
 		ao2_unlock(q);
-		queue_t_unref(q, "Done with QUEUE() function");
+		ao2_t_ref(q, -1, "Done with QUEUE() function");
 	} else {
 		ast_log(LOG_WARNING, "queue %s was not found\n", data);
 	}
@@ -6487,7 +6460,7 @@
 	q = load_realtime_queue(data, 0);
 	snprintf(buf, len, "%d", q != NULL? 1 : 0);
 	if (q) {
-		queue_t_unref(q, "Done with temporary reference in QUEUE_EXISTS()");
+		ao2_t_ref(q, -1, "Done with temporary reference in QUEUE_EXISTS()");
 	}
 
 	return 0;
@@ -6586,7 +6559,7 @@
 			ao2_unlock(m);
 			ao2_ref(m, -1);
 		}
-		queue_t_unref(q, "Done with temporary reference in QUEUE_MEMBER()");
+		ao2_t_ref(q, -1, "Done with temporary reference in QUEUE_MEMBER()");
 	} else {
 		ast_log(LOG_WARNING, "queue %s was not found\n", args.queuename);
 	}
@@ -6718,7 +6691,7 @@
 			ao2_ref(m, -1);
 		}
 		ao2_iterator_destroy(&mem_iter);
-		queue_t_unref(q, "Done with temporary reference in QUEUE_MEMBER_COUNT");
+		ao2_t_ref(q, -1, "Done with temporary reference in QUEUE_MEMBER_COUNT");
 	} else {
 		ast_log(LOG_WARNING, "queue %s was not found\n", data);
 	}
@@ -6746,7 +6719,7 @@
 		ao2_lock(q);
 		count = q->count;
 		ao2_unlock(q);
-		queue_t_unref(q, "Done with reference in QUEUE_WAITING_COUNT()");
+		ao2_t_ref(q, -1, "Done with reference in QUEUE_WAITING_COUNT()");
 	} else if ((var = ast_load_realtime("queues", "name", data, SENTINEL))) {
 		/* if the queue is realtime but was not found in memory, this
 		 * means that the queue had been deleted from memory since it was
@@ -6804,7 +6777,7 @@
 		ao2_ref(m, -1);
 	}
 	ao2_iterator_destroy(&mem_iter);
-	queue_t_unref(q, "Done with QUEUE_MEMBER_LIST()");
+	ao2_t_ref(q, -1, "Done with QUEUE_MEMBER_LIST()");
 
 	/* We should already be terminated, but let's make sure. */
 	buf[len - 1] = '\0';
@@ -7184,7 +7157,7 @@
 		/* Free remaining members marked as dead */
 		ao2_callback(q->members, OBJ_NODATA | OBJ_MULTIPLE | OBJ_UNLINK, kill_dead_members, q);
 	}
-	queue_t_unref(q, "Expiring creation reference");
+	ao2_t_ref(q, -1, "Expiring creation reference");
 }
 
 static int mark_queues_dead(void *obj, void *arg, int flags)
@@ -7298,7 +7271,7 @@
 		if (ast_strlen_zero(queuename) || !strcasecmp(q->name, queuename))
 			clear_queue(q);
 		ao2_unlock(q);
-		queue_t_unref(q, "Done with iterator");
+		ao2_t_ref(q, -1, "Done with iterator");
 	}
 	ao2_iterator_destroy(&queue_iter);
 	return 0;
@@ -7373,7 +7346,7 @@
 		float sl;
 
 		if (argc == 3 && strcasecmp(q->name, argv[2])) {
-			queue_t_unref(q, "Done with iterator");
+			ao2_t_ref(q, -1, "Done with iterator");
 			continue;
 		}
 		found = 1;
@@ -7451,7 +7424,7 @@
 		}
 		do_print(s, fd, "");	/* blank line between entries */
 		ao2_unlock(q);
-		queue_t_unref(q, "Done with iterator"); /* Unref the iterator's reference */
+		ao2_t_ref(q, -1, "Done with iterator"); /* Unref the iterator's reference */
 	}
 	ao2_iterator_destroy(&queue_iter);
 
@@ -7478,10 +7451,10 @@
 	while ((q = ao2_t_iterator_next(&queue_iter, "Iterate through queues"))) {
 		if (!strncasecmp(word, q->name, wordlen) && ++which > state) {
 			ret = ast_strdup(q->name);
-			queue_t_unref(q, "Done with iterator");
+			ao2_t_ref(q, -1, "Done with iterator");
 			break;
 		}
-		queue_t_unref(q, "Done with iterator");
+		ao2_t_ref(q, -1, "Done with iterator");
 	}
 	ao2_iterator_destroy(&queue_iter);
 
@@ -7633,7 +7606,7 @@
 			"\r\n",
 			q->name, qmemcount, qmemavail, qchancount, q->holdtime, q->talktime, qlongestholdtime, idText);
 		ao2_unlock(q);
-		queue_t_unref(q, "Done with iterator");
+		ao2_t_ref(q, -1, "Done with iterator");
 	}
 	ao2_iterator_destroy(&queue_iter);
 	astman_append(s,
@@ -7748,7 +7721,7 @@
 				(long) (now - qe->start), idText);
 		}
 		ao2_unlock(q);
-		queue_t_unref(q, "Done with iterator");
+		ao2_t_ref(q, -1, "Done with iterator");
 	}
 	ao2_iterator_destroy(&queue_iter);
 
@@ -8179,7 +8152,7 @@
 				ao2_unlock(m);
 				tmp = ast_strdup(m->interface);
 				ao2_ref(m, -1);
-				queue_t_unref(q, "Done with iterator, returning interface name");
+				ao2_t_ref(q, -1, "Done with iterator, returning interface name");
 				ao2_iterator_destroy(&mem_iter);
 				ao2_iterator_destroy(&queue_iter);
 				return tmp;
@@ -8188,7 +8161,7 @@
 			ao2_ref(m, -1);
 		}
 		ao2_iterator_destroy(&mem_iter);
-		queue_t_unref(q, "Done with iterator");
+		ao2_t_ref(q, -1, "Done with iterator");
 	}
 	ao2_iterator_destroy(&queue_iter);
 
@@ -8851,7 +8824,7 @@
 	i = ao2_iterator_init(queues, 0);
 	while ((queue = ao2_iterator_next(&i))) {
 		queues_data_provider_get_helper(search, data_root, queue);
-		queue_unref(queue);
+		ao2_ref(queue, -1);
 	}
 	ao2_iterator_destroy(&i);
 
@@ -8915,8 +8888,8 @@
 
 	q_iter = ao2_iterator_init(queues, 0);
 	while ((q = ao2_t_iterator_next(&q_iter, "Iterate through queues"))) {
-		queues_t_unlink(queues, q, "Remove queue from container due to unload");
-		queue_t_unref(q, "Done with iterator");
+		ao2_t_unlink(queues, q, "Done with iterator");
+		ao2_t_ref(q, -1, "Done with iterator");
 	}
 	ao2_iterator_destroy(&q_iter);
 	ao2_ref(queues, -1);




More information about the svn-commits mailing list