57#define invalid_eo(eo) ((unsigned int)eo_hdl2idx((eo)) >= EM_MAX_EOS)
75eo_rem_queue_all(
eo_elem_t *
const eo_elem);
78eo_delete_queue_all(
eo_elem_t *
const eo_elem);
96int eo_remove_queue_sync_local_req(
eo_elem_t *
const eo_elem,
98int eo_remove_queue_all_local_req(
eo_elem_t *
const eo_elem,
int delete_queues,
100int eo_remove_queue_all_sync_local_req(
eo_elem_t *
const eo_elem,
int delete_queues);
105size_t eo_name(
const eo_elem_t *
const eo_elem,
106 char name[],
const size_t maxlen);
111eo_allocated(
const eo_elem_t *
const eo_elem)
118eo_hdl2idx(em_eo_t eo)
120 return (
int)(uintptr_t)eo - 1;
125eo_idx2hdl(
int eo_idx)
127 return (em_eo_t)(uintptr_t)(eo_idx + 1);
132eo_elem_get(em_eo_t eo)
134 const int eo_idx = eo_hdl2idx(eo);
137 if (unlikely((
unsigned int)eo_idx >
EM_MAX_EOS - 1))
140 eo_elem = &
em_shm->eo_tbl.eo_elem[eo_idx];
151 if (unlikely(q_elem == NULL))
162 if (unlikely(q_elem == NULL))
165 return (em_eo_t)(uintptr_t)q_elem->
eo;
int eo_stop_local_req(eo_elem_t *const eo_elem, int num_notif, const em_notif_t notif_tbl[])
void i_event__eo_local_func_call_req(const internal_event_t *i_ev)
void eo_queue_info_print(em_eo_t eo)
void eo_info_print_all(void)
void eo_start_local_fn_at_init(void)
Run EO local-start functions for all EOs on a new core (if configured)
odp_stash_t eo_start_stash_create(void)
Create a stash used to buffer events sent during EO-start.
int eo_start_buffer_events(const em_event_t events[], int num, em_queue_t queue)
int eo_start_sync_local_req(eo_elem_t *const eo_elem)
em_status_t eo_stop_done(eo_elem_t *const eo_elem)
em_status_t eo_rem_queue(eo_elem_t *const eo_elem, queue_elem_t *const q_elem)
em_status_t eo_add_queue(eo_elem_t *const eo_elem, queue_elem_t *const q_elem)
int eo_stop_sync_local_req(eo_elem_t *const eo_elem)
int eo_start_local_req(eo_elem_t *const eo_elem, int num_notif, const em_notif_t notif_tbl[])
void eo_stop_local_fn_at_term(void)
Run EO local-stop funcs for all EOs during term-core (if configured)
void eo_start_send_buffered_events(eo_elem_t *const eo_elem)
ENV_LOCAL em_locm_t em_locm
em_locm_current_t current
objpool_elem_t eo_pool_elem