Lines Matching defs:queue

54  * event queue, and a reference count.
60 * An event queue is represented by a ct_equeue_t, and consists of a
63 * listeners"). There are three queue types, defined by ct_listnum_t
64 * (an enum). An event may be on one of each type of queue
65 * simultaneously; the list linkage used by a queue is determined by
71 * represent the event's linkage in a specific event queue.
81 * for that membership, p_ct_member; and an array of event queue
138 * per queue it is present on, in addition to those needed for the
140 * specific queues, and increase a queue-specific reference count
147 * its event queue's ctq_lock.
532 * we grab the queue pointer here.
567 * queue now.
592 * bundle queue.
604 * Ensure the process has an event queue. Checked by ASSERTs
666 list_t *queue = &ct->ct_events.ctq_events;
676 * We are probably ACKing something near the head of the queue.
678 for (ev = list_head(queue); ev; ev = list_next(queue, ev)) {
746 list_t *queue = &ct->ct_events.ctq_events;
753 for (ev = list_head(queue); ev; ev = list_next(queue, ev)) {
786 list_t *queue = &ct->ct_events.ctq_events;
793 for (ev = list_head(queue); ev; ev = list_next(queue, ev)) {
930 * Drain pbundles. Because a process bundle queue could have
1367 * Obtains a type's bundle queue.
1378 * Obtain's a process's bundle queue. If one doesn't exist, one is
1379 * created. Often used simply to ensure that a bundle queue is
1401 * If there isn't a bundle queue of the required type, allocate
1754 * Initializes a queue of a particular type. If dynamic is set, the
1755 * queue is to be freed when its last listener is removed after being
1789 * Destroys the specified queue. The queue is freed if referenced
1849 * releasing the queue's hold on the event if appropriate.
1870 * Move this listener to the specified event in the queue.
1907 * drops the queue lock, its caller (cte_qreadable) needs to make sure
1964 * queue lock, contract_owned can't always check if we
1988 * queue.
2016 * We check for CTLF_COPYOUT again in case we dropped the queue
2048 * Copies events from the specified contract event queue to the
2049 * end of the specified process bundle queue. Only called from
2052 * We copy to the end of the target queue instead of mixing the events
2102 * Trims unneeded events from an event queue. Algorithm works as
2159 * Drain all events from the specified queue, and mark it dead. If
2198 * listeners on a per-event basis, not just a per-queue basis.
2221 * process bundle queue, free it.
2232 * Publishes an event to a specific queue. Only called by
2243 * If this event may already exist on this queue, check to see if it
2255 * any listeners, or if the queue has been shut down.
2277 * Trim unnecessary events from the queue.
2328 * CTEL_CONTRACT - First deliver to the contract queue, acking
2344 * queue.
2351 * deliver to the owner's process bundle queue.
2393 * Add a new listener to an event queue.
2413 * Remove a listener from an event queue. No other queue activities
2441 * queue (i.e. a process bundle) we free it. Otherwise we just
2457 * Moves a listener's queue pointer to the beginning of the queue.
2469 * have most of the mechanism needed thanks to queue trimming,
2489 * on the queue. To avoid races, this movement only occurs if the
2632 * Only move our location in the queue if all copyouts were
2660 * removed from the queue until this listener reads or skips them.