Lines Matching refs:ev
31 #define EVENT_FOREACH_START(ev, idx, from, to, map) \ argument
33 const event_t ev = 1L << idx; if (!((map) & (ev))) continue;
34 #define EVENT_FOREACH_END(ev, map) \ argument
35 if (!((map) &= ~ev)) break;}} while (0)
84 EVENT_FOREACH_START(ev, i, BEV_OFFSET, BEV_OFFSET + NUM_BEV, map) { in InitEvP()
86 } EVENT_FOREACH_END(ev, map); in InitEvP()
91 EVENT_FOREACH_START(ev, i, UDE_OFFSET, MAX_EV, map) { in InitEvP()
93 } EVENT_FOREACH_END(ev, map); in InitEvP()
99 EVENT_FOREACH_START(ev, i, BEV_OFFSET, BEV_OFFSET + NUM_BEV, evp->cb_map) { in CleanupEvP()
101 } EVENT_FOREACH_END(ev, evp->cb_map); in CleanupEvP()
106 EVENT_FOREACH_START(ev, i, UDE_OFFSET, MAX_EV, evp->cb_map) { in CleanupEvP()
108 } EVENT_FOREACH_END(ev, evp->cb_map); in CleanupEvP()
163 EVENT_FOREACH_START(ev, i, BEV_OFFSET, BEV_OFFSET + NUM_BEV, ev_total) { in RegCbWCpy()
164 if (events & ev) { in RegCbWCpy()
165 assert((ev & overlap) ? new_evt->ent[i].cb == cb in RegCbWCpy()
167 if (!(ev & overlap)) in RegCbWCpy()
169 } else if (evcpy & ev) { in RegCbWCpy()
175 if (ev_inc_ref & ev) { in RegCbWCpy()
177 if (!(new_evt->map & ev)) in RegCbWCpy()
178 new_evt->map |= ev; in RegCbWCpy()
179 if (ev_dec_ref & ev) { in RegCbWCpy()
181 cur_evt->map &= ~ev; in RegCbWCpy()
184 } EVENT_FOREACH_END(ev, ev_total); in RegCbWCpy()
190 EVENT_FOREACH_START(ev, i, UDE_OFFSET, MAX_EV, ev_total) { in RegCbWCpy()
191 if (events & ev) { in RegCbWCpy()
192 assert((ev & overlap) ? new_evt->ent[i].cb == cb in RegCbWCpy()
194 if (!(ev & overlap)) in RegCbWCpy()
200 } else if (evcpy & ev) { in RegCbWCpy()
206 if (ev_inc_ref & ev) { in RegCbWCpy()
208 if (!(new_evt->map & ev)) in RegCbWCpy()
209 new_evt->map |= ev; in RegCbWCpy()
210 if (ev_dec_ref & ev) { in RegCbWCpy()
212 cur_evt->map &= ~ev; in RegCbWCpy()
215 } EVENT_FOREACH_END(ev, ev_total); in RegCbWCpy()
237 EVENT_FOREACH_START(ev, i, BEV_OFFSET, BEV_OFFSET + NUM_BEV, events) { in RegCbWoCpy()
238 if (events & ev) { in RegCbWoCpy()
239 assert((ev & overlap) ? cur_evt->ent[i].cb == cb in RegCbWoCpy()
241 if (!(ev & overlap)) in RegCbWoCpy()
246 if (ev_inc_ref & ev) { in RegCbWoCpy()
248 if (!(cur_evt->map & ev)) in RegCbWoCpy()
249 cur_evt->map |= ev; in RegCbWoCpy()
251 } EVENT_FOREACH_END(ev, events); in RegCbWoCpy()
257 EVENT_FOREACH_START(ev, i, UDE_OFFSET, MAX_EV, events) { in RegCbWoCpy()
258 if (events & ev) { in RegCbWoCpy()
259 assert((ev & overlap) ? cur_evt->ent[i].cb == cb in RegCbWoCpy()
261 if (!(ev & overlap)) in RegCbWoCpy()
270 if (ev_inc_ref & ev) { in RegCbWoCpy()
272 if (!(cur_evt->map & ev)) in RegCbWoCpy()
273 cur_evt->map |= ev; in RegCbWoCpy()
275 } EVENT_FOREACH_END(ev, events); in RegCbWoCpy()
289 EVENT_FOREACH_START(ev, i, UDE_OFFSET, MAX_EV, evs) { in UnregCb()
306 } EVENT_FOREACH_END(ev, evs); in UnregCb()
317 EVENT_FOREACH_START(ev, i, BEV_OFFSET, BEV_OFFSET + NUM_BEV, events) { in UnregCb()
319 evt->map &= ~ev; in UnregCb()
320 } EVENT_FOREACH_END(ev, events); in UnregCb()
325 EVENT_FOREACH_START(ev, i, UDE_OFFSET, MAX_EV, events) { in UnregCb()
327 evt->map &= ~ev; in UnregCb()
328 } EVENT_FOREACH_END(ev, events); in UnregCb()
345 EVENT_FOREACH_START(ev, i, BEV_OFFSET, BEV_OFFSET + NUM_BEV, ev_total) { in FindReusableEvT()
346 if (ev & events) { in FindReusableEvT()
353 } EVENT_FOREACH_END(ev, ev_total); in FindReusableEvT()
358 EVENT_FOREACH_START(ev, i, UDE_OFFSET, MAX_EV, ev_total) { in FindReusableEvT()
359 if (ev & events) { in FindReusableEvT()
366 } EVENT_FOREACH_END(ev, ev_total); in FindReusableEvT()
539 EVENT_FOREACH_START(ev, j, BEV_OFFSET, MAX_EV, ancestors) { in mtcp_define_event()
541 } EVENT_FOREACH_END(ev, ancestors); in mtcp_define_event()
684 const uint64_t ev = (1L << ev_idx); in HandleCallback() local
686 if (cb_map & ev) { in HandleCallback()
688 evt->ent[ev_idx].cb(mctx, socket->id, side, ev, data); in HandleCallback()
690 if (!(cb_map &= ~ev)) in HandleCallback()
712 (tmpdata.u64 = g_udes[ude_id - UDE_OFFSET].ft(mctx, socket->id, side, ev, data))) { in HandleCallback()