Lines Matching refs:evcb
494 event_callback_to_event(struct event_callback *evcb) in event_callback_to_event() argument
496 EVUTIL_ASSERT((evcb->evcb_flags & EVLIST_INIT)); in event_callback_to_event()
497 return EVUTIL_UPCAST(evcb, struct event, ev_evcallback); in event_callback_to_event()
778 struct event_callback *evcb, in event_base_cancel_single_callback_() argument
783 if (evcb->evcb_flags & EVLIST_INIT) { in event_base_cancel_single_callback_()
784 struct event *ev = event_callback_to_event(evcb); in event_base_cancel_single_callback_()
791 event_callback_cancel_nolock_(base, evcb, 1); in event_base_cancel_single_callback_()
796 if (run_finalizers && (evcb->evcb_flags & EVLIST_FINALIZING)) { in event_base_cancel_single_callback_()
797 switch (evcb->evcb_closure) { in event_base_cancel_single_callback_()
800 struct event *ev = event_callback_to_event(evcb); in event_base_cancel_single_callback_()
802 if (evcb->evcb_closure == EV_CLOSURE_EVENT_FINALIZE_FREE) in event_base_cancel_single_callback_()
807 evcb->evcb_cb_union.evcb_cbfinalize(evcb, evcb->evcb_arg); in event_base_cancel_single_callback_()
821 struct event_callback *evcb, *next; in event_base_free_queues_() local
822 for (evcb = TAILQ_FIRST(&base->activequeues[i]); evcb; ) { in event_base_free_queues_()
823 next = TAILQ_NEXT(evcb, evcb_active_next); in event_base_free_queues_()
824 … deleted += event_base_cancel_single_callback_(base, evcb, run_finalizers); in event_base_free_queues_()
825 evcb = next; in event_base_free_queues_()
830 struct event_callback *evcb; in event_base_free_queues_() local
831 while ((evcb = TAILQ_FIRST(&base->active_later_queue))) { in event_base_free_queues_()
832 … deleted += event_base_cancel_single_callback_(base, evcb, run_finalizers); in event_base_free_queues_()
1640 struct event_callback *evcb; in event_process_active_single_queue() local
1645 for (evcb = TAILQ_FIRST(activeq); evcb; evcb = TAILQ_FIRST(activeq)) { in event_process_active_single_queue()
1647 if (evcb->evcb_flags & EVLIST_INIT) { in event_process_active_single_queue()
1648 ev = event_callback_to_event(evcb); in event_process_active_single_queue()
1651 event_queue_remove_active(base, evcb); in event_process_active_single_queue()
1662 event_queue_remove_active(base, evcb); in event_process_active_single_queue()
1665 … evcb, evcb->evcb_closure, evcb->evcb_cb_union.evcb_callback)); in event_process_active_single_queue()
1668 if (!(evcb->evcb_flags & EVLIST_INTERNAL)) in event_process_active_single_queue()
1672 base->current_event = evcb; in event_process_active_single_queue()
1677 switch (evcb->evcb_closure) { in event_process_active_single_queue()
1697 … void (*evcb_selfcb)(struct event_callback *, void *) = evcb->evcb_cb_union.evcb_selfcb; in event_process_active_single_queue()
1699 evcb_selfcb(evcb, evcb->evcb_arg); in event_process_active_single_queue()
1705 int evcb_closure = evcb->evcb_closure; in event_process_active_single_queue()
1709 EVUTIL_ASSERT((evcb->evcb_flags & EVLIST_FINALIZING)); in event_process_active_single_queue()
1718 … void (*evcb_cbfinalize)(struct event_callback *, void *) = evcb->evcb_cb_union.evcb_cbfinalize; in event_process_active_single_queue()
1720 EVUTIL_ASSERT((evcb->evcb_flags & EVLIST_FINALIZING)); in event_process_active_single_queue()
1722 evcb_cbfinalize(evcb, evcb->evcb_arg); in event_process_active_single_queue()
2201 struct event_callback *evcb = base->current_event; in event_base_get_running_event() local
2202 if (evcb->evcb_flags & EVLIST_INIT) in event_base_get_running_event()
2203 ev = event_callback_to_event(evcb); in event_base_get_running_event()
2291 …e_nolock_(struct event_base *base, unsigned flags, struct event_callback *evcb, void (*cb)(struct … in event_callback_finalize_nolock_() argument
2294 if (evcb->evcb_flags & EVLIST_INIT) { in event_callback_finalize_nolock_()
2295 ev = event_callback_to_event(evcb); in event_callback_finalize_nolock_()
2298 event_callback_cancel_nolock_(base, evcb, 0); /*XXX can this fail?*/ in event_callback_finalize_nolock_()
2301 evcb->evcb_closure = EV_CLOSURE_CB_FINALIZE; in event_callback_finalize_nolock_()
2302 evcb->evcb_cb_union.evcb_cbfinalize = cb; in event_callback_finalize_nolock_()
2303 event_callback_activate_nolock_(base, evcb); /* XXX can this really fail?*/ in event_callback_finalize_nolock_()
2304 evcb->evcb_flags |= EVLIST_FINALIZING; in event_callback_finalize_nolock_()
2308 event_callback_finalize_(struct event_base *base, unsigned flags, struct event_callback *evcb, void… in event_callback_finalize_() argument
2311 event_callback_finalize_nolock_(base, flags, evcb, cb); in event_callback_finalize_()
2334 struct event_callback *evcb = evcbs[i]; in event_callback_finalize_many_() local
2335 if (evcb == base->current_event) { in event_callback_finalize_many_()
2336 event_callback_finalize_nolock_(base, 0, evcb, cb); in event_callback_finalize_many_()
2339 event_callback_cancel_nolock_(base, evcb, 0); in event_callback_finalize_many_()
2998 struct event_callback *evcb) in event_callback_activate_() argument
3002 r = event_callback_activate_nolock_(base, evcb); in event_callback_activate_()
3009 struct event_callback *evcb) in event_callback_activate_nolock_() argument
3013 if (evcb->evcb_flags & EVLIST_FINALIZING) in event_callback_activate_nolock_()
3016 switch (evcb->evcb_flags & (EVLIST_ACTIVE|EVLIST_ACTIVE_LATER)) { in event_callback_activate_nolock_()
3021 event_queue_remove_active_later(base, evcb); in event_callback_activate_nolock_()
3030 event_queue_insert_active(base, evcb); in event_callback_activate_nolock_()
3040 struct event_callback *evcb) in event_callback_activate_later_nolock_() argument
3042 if (evcb->evcb_flags & (EVLIST_ACTIVE|EVLIST_ACTIVE_LATER)) in event_callback_activate_later_nolock_()
3045 event_queue_insert_active_later(base, evcb); in event_callback_activate_later_nolock_()
3061 struct event_callback *evcb) in event_callback_cancel_() argument
3065 r = event_callback_cancel_nolock_(base, evcb, 0); in event_callback_cancel_()
3072 struct event_callback *evcb, int even_if_finalizing) in event_callback_cancel_nolock_() argument
3074 if ((evcb->evcb_flags & EVLIST_FINALIZING) && !even_if_finalizing) in event_callback_cancel_nolock_()
3077 if (evcb->evcb_flags & EVLIST_INIT) in event_callback_cancel_nolock_()
3078 return event_del_nolock_(event_callback_to_event(evcb), in event_callback_cancel_nolock_()
3081 switch ((evcb->evcb_flags & (EVLIST_ACTIVE|EVLIST_ACTIVE_LATER))) { in event_callback_cancel_nolock_()
3088 event_queue_remove_active(base, evcb); in event_callback_cancel_nolock_()
3091 event_queue_remove_active_later(base, evcb); in event_callback_cancel_nolock_()
3238 event_queue_remove_active(struct event_base *base, struct event_callback *evcb) in event_queue_remove_active() argument
3241 if (EVUTIL_FAILURE_CHECK(!(evcb->evcb_flags & EVLIST_ACTIVE))) { in event_queue_remove_active()
3243 evcb, EVLIST_ACTIVE); in event_queue_remove_active()
3246 DECR_EVENT_COUNT(base, evcb->evcb_flags); in event_queue_remove_active()
3247 evcb->evcb_flags &= ~EVLIST_ACTIVE; in event_queue_remove_active()
3250 TAILQ_REMOVE(&base->activequeues[evcb->evcb_pri], in event_queue_remove_active()
3251 evcb, evcb_active_next); in event_queue_remove_active()
3254 event_queue_remove_active_later(struct event_base *base, struct event_callback *evcb) in event_queue_remove_active_later() argument
3257 if (EVUTIL_FAILURE_CHECK(!(evcb->evcb_flags & EVLIST_ACTIVE_LATER))) { in event_queue_remove_active_later()
3259 evcb, EVLIST_ACTIVE_LATER); in event_queue_remove_active_later()
3262 DECR_EVENT_COUNT(base, evcb->evcb_flags); in event_queue_remove_active_later()
3263 evcb->evcb_flags &= ~EVLIST_ACTIVE_LATER; in event_queue_remove_active_later()
3266 TAILQ_REMOVE(&base->active_later_queue, evcb, evcb_active_next); in event_queue_remove_active_later()
3379 event_queue_insert_active(struct event_base *base, struct event_callback *evcb) in event_queue_insert_active() argument
3383 if (evcb->evcb_flags & EVLIST_ACTIVE) { in event_queue_insert_active()
3388 INCR_EVENT_COUNT(base, evcb->evcb_flags); in event_queue_insert_active()
3390 evcb->evcb_flags |= EVLIST_ACTIVE; in event_queue_insert_active()
3394 EVUTIL_ASSERT(evcb->evcb_pri < base->nactivequeues); in event_queue_insert_active()
3395 TAILQ_INSERT_TAIL(&base->activequeues[evcb->evcb_pri], in event_queue_insert_active()
3396 evcb, evcb_active_next); in event_queue_insert_active()
3400 event_queue_insert_active_later(struct event_base *base, struct event_callback *evcb) in event_queue_insert_active_later() argument
3403 if (evcb->evcb_flags & (EVLIST_ACTIVE_LATER|EVLIST_ACTIVE)) { in event_queue_insert_active_later()
3408 INCR_EVENT_COUNT(base, evcb->evcb_flags); in event_queue_insert_active_later()
3409 evcb->evcb_flags |= EVLIST_ACTIVE_LATER; in event_queue_insert_active_later()
3412 EVUTIL_ASSERT(evcb->evcb_pri < base->nactivequeues); in event_queue_insert_active_later()
3413 TAILQ_INSERT_TAIL(&base->active_later_queue, evcb, evcb_active_next); in event_queue_insert_active_later()
3443 struct event_callback *evcb; in event_queue_make_later_events_active() local
3446 while ((evcb = TAILQ_FIRST(&base->active_later_queue))) { in event_queue_make_later_events_active()
3447 TAILQ_REMOVE(&base->active_later_queue, evcb, evcb_active_next); in event_queue_make_later_events_active()
3448 evcb->evcb_flags = (evcb->evcb_flags & ~EVLIST_ACTIVE_LATER) | EVLIST_ACTIVE; in event_queue_make_later_events_active()
3449 EVUTIL_ASSERT(evcb->evcb_pri < base->nactivequeues); in event_queue_make_later_events_active()
3450 TAILQ_INSERT_TAIL(&base->activequeues[evcb->evcb_pri], evcb, evcb_active_next); in event_queue_make_later_events_active()
3451 base->n_deferreds_queued += (evcb->evcb_closure == EV_CLOSURE_CB_SELF); in event_queue_make_later_events_active()
3724 struct event_callback *evcb; in event_base_foreach_event_nolock_() local
3725 TAILQ_FOREACH(evcb, &base->activequeues[i], evcb_active_next) { in event_base_foreach_event_nolock_()
3726 … if ((evcb->evcb_flags & (EVLIST_INIT|EVLIST_INSERTED|EVLIST_TIMEOUT)) != EVLIST_INIT) { in event_base_foreach_event_nolock_()
3732 ev = event_callback_to_event(evcb); in event_base_foreach_event_nolock_()
4005 struct event_callback *evcb; in event_base_assert_ok_nolock_() local
4007 TAILQ_FOREACH(evcb, &base->activequeues[i], evcb_active_next) { in event_base_assert_ok_nolock_()
4008 … EVUTIL_ASSERT((evcb->evcb_flags & (EVLIST_ACTIVE|EVLIST_ACTIVE_LATER)) == EVLIST_ACTIVE); in event_base_assert_ok_nolock_()
4009 EVUTIL_ASSERT(evcb->evcb_pri == i); in event_base_assert_ok_nolock_()
4015 struct event_callback *evcb; in event_base_assert_ok_nolock_() local
4016 TAILQ_FOREACH(evcb, &base->active_later_queue, evcb_active_next) { in event_base_assert_ok_nolock_()
4017 … EVUTIL_ASSERT((evcb->evcb_flags & (EVLIST_ACTIVE|EVLIST_ACTIVE_LATER)) == EVLIST_ACTIVE_LATER); in event_base_assert_ok_nolock_()