Barrelfish
Functions
spawn_omp.c File Reference

functionality to spawn domains More...

Functions

errval_t spawn_symval_count (uint32_t *ret_count)
 obtains the number of OpenMP symbols of the ELF file More...
 
errval_t spawn_symval_cache_init (uint8_t lazy)
 initializes the symbol value cache for faster lookups More...
 
errval_t spawn_symval_lookup_name (char *name, uint32_t *ret_idx, genvaddr_t *ret_addr)
 looks up the symbol based on its name and adds it to the cache More...
 
errval_t spawn_symval_lookup_addr (genvaddr_t addr, uint32_t *ret_idx, char **ret_name)
 looks up the symbol information based on its address More...
 
errval_t spawn_symval_lookup_idx (uint32_t idx, char **ret_name, genvaddr_t *ret_addr)
 looks up the symbol by a given index More...
 
errval_t spawn_symval_lookup (const char *binary, uint32_t idx, char **ret_name, genvaddr_t *ret_addr)
 executes a lookup query on octopus to obtain the symbol More...
 
errval_t spawn_symval_register (const char *binary, uint32_t idx, const char *symname, genvaddr_t address)
 registers a found symbol with octopus for later retrieval More...
 

Detailed Description

functionality to spawn domains

Function Documentation

errval_t spawn_symval_cache_init ( uint8_t  lazy)

initializes the symbol value cache for faster lookups

Parameters
lazydo a lazy initialization i.e. only allocate memory for the symbols but do not load them
Returns
SYS_ERR_OK on success errval on error
errval_t spawn_symval_count ( uint32_t *  ret_count)

obtains the number of OpenMP symbols of the ELF file

Parameters
ret_countreturns the number of symbols
Returns
SYS_ERR_OK on success errval on failure
errval_t spawn_symval_lookup ( const char *  binary,
uint32_t  idx,
char **  ret_name,
genvaddr_t *  ret_addr 
)

executes a lookup query on octopus to obtain the symbol

Parameters
binaryname of the binary to query
idxindex of the symbol to query
ret_namereturns the name of the symbol
ret_addrreturns the address of the symbol
Returns
errval_t spawn_symval_lookup_addr ( genvaddr_t  addr,
uint32_t *  ret_idx,
char **  ret_name 
)

looks up the symbol information based on its address

Parameters
addrthe address to lookup
ret_idxreturns the symbol index
ret_namereturns the symbol name
Returns
SYS_ERR_OK on success errval on error
errval_t spawn_symval_lookup_idx ( uint32_t  idx,
char **  ret_name,
genvaddr_t *  ret_addr 
)

looks up the symbol by a given index

Parameters
idxthe index of the symbol to look up
ret_namereturns the name of the symbol
ret_addrreturns the address of the symbol
Returns
SYS_ERR_OK on success errval on failure
errval_t spawn_symval_lookup_name ( char *  name,
uint32_t *  ret_idx,
genvaddr_t *  ret_addr 
)

looks up the symbol based on its name and adds it to the cache

Parameters
namethe name of the symbol to query
ret_idxreturns the symbol index
ret_addrreturns the address of the symbol
Returns
SYS_ERR_OK on success errval on failure
errval_t spawn_symval_register ( const char *  binary,
uint32_t  idx,
const char *  symname,
genvaddr_t  address 
)

registers a found symbol with octopus for later retrieval

Parameters
binarythe name of the binary
idxindex of the symbol to insert
symnamename of the symbol to insert
addressaddress of the sybol to insert
Returns
SYS_ERR_OK on success errval on error