EM-ODP 4.4.0
Event Machine on ODP
Loading...
Searching...
No Matches
em_shm_t Struct Reference

#include <em_mem.h>

Collaboration diagram for em_shm_t:

Data Fields

odp_shm_t this_shm
 
em_log_func_t log_fn
 
em_vlog_func_t vlog_fn
 
em_conf_t conf
 
bool is_init
 
cfgfile_opt_cache_t opt_cache
 
em_cfgfile_opts_t opt
 
core_map_t core_map ENV_CACHE_LINE_ALIGNED
 
mpool_tbl_t mpool_tbl ENV_CACHE_LINE_ALIGNED
 
mpool_pool_t mpool_pool ENV_CACHE_LINE_ALIGNED
 
eo_tbl_t eo_tbl ENV_CACHE_LINE_ALIGNED
 
eo_pool_t eo_pool ENV_CACHE_LINE_ALIGNED
 
event_chaining_t event_chaining ENV_CACHE_LINE_ALIGNED
 
queue_tbl_t queue_tbl ENV_CACHE_LINE_ALIGNED
 
queue_pool_t queue_pool ENV_CACHE_LINE_ALIGNED
 
queue_pool_t queue_pool_static ENV_CACHE_LINE_ALIGNED
 
queue_pool_t queue_pool_aggr ENV_CACHE_LINE_ALIGNED
 
queue_group_tbl_t queue_group_tbl ENV_CACHE_LINE_ALIGNED
 
queue_group_pool_t queue_group_pool ENV_CACHE_LINE_ALIGNED
 
atomic_group_tbl_t atomic_group_tbl ENV_CACHE_LINE_ALIGNED
 
atomic_group_pool_t atomic_group_pool ENV_CACHE_LINE_ALIGNED
 
event_group_tbl_t event_group_tbl ENV_CACHE_LINE_ALIGNED
 
odp_stash_t event_group_stash ENV_CACHE_LINE_ALIGNED
 
error_handler_t error_handler ENV_CACHE_LINE_ALIGNED
 
hook_tbl_t *dispatch_enter_cb_tbl ENV_CACHE_LINE_ALIGNED
 
hook_tbl_tdispatch_exit_cb_tbl
 
hook_tbl_talloc_hook_tbl
 
hook_tbl_tfree_hook_tbl
 
hook_tbl_tsend_hook_tbl
 
hook_tbl_tto_idle_hook_tbl
 
hook_tbl_tto_active_hook_tbl
 
hook_tbl_twhile_idle_hook_tbl
 
hook_storage_t dispatch_enter_cb_storage ENV_CACHE_LINE_ALIGNED
 
hook_storage_t dispatch_exit_cb_storage ENV_CACHE_LINE_ALIGNED
 
hook_storage_t alloc_hook_storage ENV_CACHE_LINE_ALIGNED
 
hook_storage_t free_hook_storage ENV_CACHE_LINE_ALIGNED
 
hook_storage_t send_hook_storage ENV_CACHE_LINE_ALIGNED
 
hook_storage_t to_idle_hook_storage
 
hook_storage_t to_active_hook_storage
 
hook_storage_t while_idle_hook_storage
 
timer_storage_t timers ENV_CACHE_LINE_ALIGNED
 
odp_atomic_u32_t eo_count ENV_CACHE_LINE_ALIGNED
 
odp_atomic_u32_t queue_count
 
odp_atomic_u32_t queue_group_count
 
odp_atomic_u32_t event_group_count
 
odp_atomic_u32_t atomic_group_count
 
odp_atomic_u32_t pool_count
 
libconfig_t libconfig ENV_CACHE_LINE_ALIGNED
 
struct { 
 
   int   map [EM_QUEUE_PRIO_NUM
 
   int   num_runtime 
 
queue_prio 
 
void *end[0] ENV_CACHE_LINE_ALIGNED
 

Detailed Description

EM shared memory data

Struct contains data that is shared between all EM-cores, i.e. shared between all EM-processes or EM-threads depending on the setup.

Definition at line 85 of file em_mem.h.

Field Documentation

◆ alloc_hook_tbl

hook_tbl_t* em_shm_t::alloc_hook_tbl

Alloc-hook functions currently in use

Definition at line 140 of file em_mem.h.

◆ atomic_group_count

odp_atomic_u32_t em_shm_t::atomic_group_count

Current number of allocated atomic groups

Definition at line 181 of file em_mem.h.

◆ conf

em_conf_t em_shm_t::conf

EM configuration as given to em_init()

Definition at line 93 of file em_mem.h.

◆ dispatch_exit_cb_tbl

hook_tbl_t* em_shm_t::dispatch_exit_cb_tbl

Dispatcher exit callback functions currently in use

Definition at line 138 of file em_mem.h.

◆ ENV_CACHE_LINE_ALIGNED [1/27]

core_map_t core_map em_shm_t::ENV_CACHE_LINE_ALIGNED

Mapping between physical core id <-> EM core id

Definition at line 101 of file em_mem.h.

◆ ENV_CACHE_LINE_ALIGNED [2/27]

mpool_tbl_t mpool_tbl em_shm_t::ENV_CACHE_LINE_ALIGNED

Table of buffer/packet/event pools used by EM

Definition at line 103 of file em_mem.h.

◆ ENV_CACHE_LINE_ALIGNED [3/27]

mpool_pool_t mpool_pool em_shm_t::ENV_CACHE_LINE_ALIGNED

Pool of free event/mempools

Definition at line 105 of file em_mem.h.

◆ ENV_CACHE_LINE_ALIGNED [4/27]

eo_tbl_t eo_tbl em_shm_t::ENV_CACHE_LINE_ALIGNED

EO table

Definition at line 107 of file em_mem.h.

◆ ENV_CACHE_LINE_ALIGNED [5/27]

eo_pool_t eo_pool em_shm_t::ENV_CACHE_LINE_ALIGNED

EO pool of free/unused EOs

Definition at line 109 of file em_mem.h.

◆ ENV_CACHE_LINE_ALIGNED [6/27]

event_chaining_t event_chaining em_shm_t::ENV_CACHE_LINE_ALIGNED

Event Chaining resources

Definition at line 111 of file em_mem.h.

◆ ENV_CACHE_LINE_ALIGNED [7/27]

queue_tbl_t queue_tbl em_shm_t::ENV_CACHE_LINE_ALIGNED

Queue table

Definition at line 113 of file em_mem.h.

◆ ENV_CACHE_LINE_ALIGNED [8/27]

queue_pool_t queue_pool em_shm_t::ENV_CACHE_LINE_ALIGNED

Queue pool of free/unused dynamic queues

Definition at line 115 of file em_mem.h.

◆ ENV_CACHE_LINE_ALIGNED [9/27]

queue_pool_t queue_pool_static em_shm_t::ENV_CACHE_LINE_ALIGNED

Queue pool of free/unused static queues

Definition at line 117 of file em_mem.h.

◆ ENV_CACHE_LINE_ALIGNED [10/27]

queue_pool_t queue_pool_aggr em_shm_t::ENV_CACHE_LINE_ALIGNED

Queue pool of free/unused aggregator queues

Definition at line 119 of file em_mem.h.

◆ ENV_CACHE_LINE_ALIGNED [11/27]

queue_group_tbl_t queue_group_tbl em_shm_t::ENV_CACHE_LINE_ALIGNED

Queue group table

Definition at line 121 of file em_mem.h.

◆ ENV_CACHE_LINE_ALIGNED [12/27]

queue_group_pool_t queue_group_pool em_shm_t::ENV_CACHE_LINE_ALIGNED

Queue group pool of free/unused queue groups

Definition at line 123 of file em_mem.h.

◆ ENV_CACHE_LINE_ALIGNED [13/27]

atomic_group_tbl_t atomic_group_tbl em_shm_t::ENV_CACHE_LINE_ALIGNED

Atomic group table

Definition at line 125 of file em_mem.h.

◆ ENV_CACHE_LINE_ALIGNED [14/27]

atomic_group_pool_t atomic_group_pool em_shm_t::ENV_CACHE_LINE_ALIGNED

Dynamic atomic group pool

Definition at line 127 of file em_mem.h.

◆ ENV_CACHE_LINE_ALIGNED [15/27]

event_group_tbl_t event_group_tbl em_shm_t::ENV_CACHE_LINE_ALIGNED

Event group table

Definition at line 129 of file em_mem.h.

◆ ENV_CACHE_LINE_ALIGNED [16/27]

odp_stash_t event_group_stash em_shm_t::ENV_CACHE_LINE_ALIGNED

Event group stash of free/unused queue groups

Definition at line 131 of file em_mem.h.

◆ ENV_CACHE_LINE_ALIGNED [17/27]

error_handler_t error_handler em_shm_t::ENV_CACHE_LINE_ALIGNED

Error handler structure

Definition at line 133 of file em_mem.h.

◆ ENV_CACHE_LINE_ALIGNED [18/27]

hook_tbl_t* dispatch_enter_cb_tbl em_shm_t::ENV_CACHE_LINE_ALIGNED

Dispatcher enter callback functions currently in use

Definition at line 136 of file em_mem.h.

◆ ENV_CACHE_LINE_ALIGNED [19/27]

hook_storage_t dispatch_enter_cb_storage em_shm_t::ENV_CACHE_LINE_ALIGNED

Dispatch enter callback storage, many sets of callback-tables

Definition at line 153 of file em_mem.h.

◆ ENV_CACHE_LINE_ALIGNED [20/27]

hook_storage_t dispatch_exit_cb_storage em_shm_t::ENV_CACHE_LINE_ALIGNED

Dispatch exit callback storage, many sets of callback-tables

Definition at line 155 of file em_mem.h.

◆ ENV_CACHE_LINE_ALIGNED [21/27]

hook_storage_t alloc_hook_storage em_shm_t::ENV_CACHE_LINE_ALIGNED

Alloc-hook function storage, many sets of hook-tables

Definition at line 157 of file em_mem.h.

◆ ENV_CACHE_LINE_ALIGNED [22/27]

hook_storage_t free_hook_storage em_shm_t::ENV_CACHE_LINE_ALIGNED

Free-hook function storage, many sets of hook-tables

Definition at line 159 of file em_mem.h.

◆ ENV_CACHE_LINE_ALIGNED [23/27]

hook_storage_t send_hook_storage em_shm_t::ENV_CACHE_LINE_ALIGNED

Send-hook function storage, many sets of hook-tables

Definition at line 161 of file em_mem.h.

◆ ENV_CACHE_LINE_ALIGNED [24/27]

timer_storage_t timers em_shm_t::ENV_CACHE_LINE_ALIGNED

Timer resources

Definition at line 170 of file em_mem.h.

◆ ENV_CACHE_LINE_ALIGNED [25/27]

odp_atomic_u32_t eo_count em_shm_t::ENV_CACHE_LINE_ALIGNED

Current number of allocated EOs

Definition at line 173 of file em_mem.h.

◆ ENV_CACHE_LINE_ALIGNED [26/27]

libconfig_t libconfig em_shm_t::ENV_CACHE_LINE_ALIGNED

libconfig setting, default (compiled) and runtime (from file)

Definition at line 186 of file em_mem.h.

◆ ENV_CACHE_LINE_ALIGNED [27/27]

void* end [0] em_shm_t::ENV_CACHE_LINE_ALIGNED

Guarantee that size is a multiple of cache line size

Definition at line 195 of file em_mem.h.

◆ event_group_count

odp_atomic_u32_t em_shm_t::event_group_count

Current number of allocated event groups

Definition at line 179 of file em_mem.h.

◆ free_hook_tbl

hook_tbl_t* em_shm_t::free_hook_tbl

Free-hook functions currently in use

Definition at line 142 of file em_mem.h.

◆ is_init

bool em_shm_t::is_init

Indicates if EM has been initialized successfully with em_init()

Definition at line 95 of file em_mem.h.

◆ log_fn

em_log_func_t em_shm_t::log_fn

EM internal log function, overridable via em_conf, var args

Definition at line 89 of file em_mem.h.

◆ map

int em_shm_t::map[EM_QUEUE_PRIO_NUM]

mapping table

Definition at line 190 of file em_mem.h.

◆ num_runtime

int em_shm_t::num_runtime

Definition at line 191 of file em_mem.h.

◆ opt

em_cfgfile_opts_t em_shm_t::opt

EM config file options

Definition at line 99 of file em_mem.h.

◆ opt_cache

cfgfile_opt_cache_t em_shm_t::opt_cache

Cache EM config file options

Definition at line 97 of file em_mem.h.

◆ pool_count

odp_atomic_u32_t em_shm_t::pool_count

Current number of allocated event pools

Definition at line 183 of file em_mem.h.

◆ queue_count

odp_atomic_u32_t em_shm_t::queue_count

Current number of allocated queues

Definition at line 175 of file em_mem.h.

◆ queue_group_count

odp_atomic_u32_t em_shm_t::queue_group_count

Current number of allocated queue groups

Definition at line 177 of file em_mem.h.

◆ [struct]

struct { ... } em_shm_t::queue_prio

priority mapping

◆ send_hook_tbl

hook_tbl_t* em_shm_t::send_hook_tbl

Send-hook functions currently in use

Definition at line 144 of file em_mem.h.

◆ this_shm

odp_shm_t em_shm_t::this_shm

Handle for this shared memory

Definition at line 87 of file em_mem.h.

◆ to_active_hook_storage

hook_storage_t em_shm_t::to_active_hook_storage

To_active hook functions storage, many sets of hook-tables

Definition at line 165 of file em_mem.h.

◆ to_active_hook_tbl

hook_tbl_t* em_shm_t::to_active_hook_tbl

To_active hook functions currently in use

Definition at line 148 of file em_mem.h.

◆ to_idle_hook_storage

hook_storage_t em_shm_t::to_idle_hook_storage

To_idle hook functions storage, many sets of hook-tables

Definition at line 163 of file em_mem.h.

◆ to_idle_hook_tbl

hook_tbl_t* em_shm_t::to_idle_hook_tbl

To_idle hook functions currently in use

Definition at line 146 of file em_mem.h.

◆ vlog_fn

em_vlog_func_t em_shm_t::vlog_fn

EM internal log function, overridable via em_conf, va_list

Definition at line 91 of file em_mem.h.

◆ while_idle_hook_storage

hook_storage_t em_shm_t::while_idle_hook_storage

While_idle hook functions storage, many sets of hook-tables

Definition at line 167 of file em_mem.h.

◆ while_idle_hook_tbl

hook_tbl_t* em_shm_t::while_idle_hook_tbl

While_idle hook functions currently in use

Definition at line 150 of file em_mem.h.


The documentation for this struct was generated from the following file: