L4Re - L4 Runtime Environment
|
Namespaces | |
Vfs | |
Virtual file system for interfaces POSIX libc. | |
Data Structures | |
class | Cap_alloc |
Capability allocator interface. More... | |
class | Console |
Console class. More... | |
class | Dataspace |
Interface for memory-like objects. More... | |
class | Debug_obj |
Debug interface. More... | |
class | Dma_space |
DMA Address Space. More... | |
class | Env |
C++ interface of the initial environment that is provided to an L4 task. More... | |
class | Event |
Event class. More... | |
class | Event_buffer_t |
Event buffer class. More... | |
class | Inhibitor |
Set of inhibitor locks, which inhibit specific actions when held. More... | |
class | Log |
Log interface class. More... | |
class | Mem_alloc |
Memory allocation interface. More... | |
struct | Mmio_space |
Interface for memory-like address space accessible via IPC. More... | |
class | Namespace |
Name-space interface. More... | |
class | Parent |
Parent interface. More... | |
class | Rm |
Region map. More... | |
class | Smart_cap_auto |
Helper for Auto_cap and Auto_del_cap. More... | |
Functions | |
long | chksys (long err, char const *extra="", long ret=0) |
Generate C++ exception on error. More... | |
long | chksys (l4_msgtag_t const &t, char const *extra="", l4_utcb_t *utcb=l4_utcb(), long ret=0) |
Generate C++ exception on error. More... | |
long | chksys (l4_msgtag_t const &t, l4_utcb_t *utcb, char const *extra="") |
Generate C++ exception on error. More... | |
template<typename T > | |
T | chkcap (T &&cap, char const *extra="", long err=-L4_ENOMEM) |
Check for valid capability or raise C++ exception. More... | |
|
inline |
Check for valid capability or raise C++ exception.
T | Type of object to check, must be capability-like (L4::Cap, L4Re::Util::Auto_cap etc.) |
cap | Capability value to check. |
extra | Optional text for exception. |
err | Error value for exception or 0 if the capability value should be used. |
This function checks whether the capability is valid. If the capability is invalid an C++ exception is generated, using err if err is not zero, otherwise the capability value is used. A valid capability will just be returned.
Definition at line 139 of file error_helper.
References L4_UNLIKELY.
Referenced by L4virtio::Svr::Block_dev< Ds_data >::Block_dev(), L4virtio::Svr::Dev_config::Dev_config(), L4virtio::Svr::Device_t< Ds_data >::handle_mem_cmd_write(), and L4virtio::Svr::Block_dev< Ds_data >::register_obj().
|
inline |
Generate C++ exception on error.
err | Error value, if negative exception will be thrown |
extra | Optional text for exception (default "") |
ret | Optional value for exception, default is error value (err) |
This function throws an exception if the err is negative and otherwise returns err.
Definition at line 62 of file error_helper.
References L4_UNLIKELY.
Referenced by L4virtio::Svr::Driver_mem_list_t< Ds_data >::add(), chksys(), L4virtio::Svr::Dev_config::Dev_config(), L4virtio::Svr::Driver_mem_region_t< Ds_data >::Driver_mem_region_t(), L4virtio::Svr::Device_t< Ds_data >::handle_mem_cmd_write(), L4virtio::Svr::Block_dev< Ds_data >::register_obj(), L4virtio::Svr::Driver_mem_list_t< Ds_data >::remove(), and L4virtio::Svr::Device_t< Ds_data >::setup_queue().
|
inline |
Generate C++ exception on error.
t | Message tag. |
extra | Optional text for exception (default "") |
utcb | Option UTCB |
ret | Optional value for exception, default is error value (err) |
This function throws an exception if the message tag contains an error or the label in the message tag is negative. Otherwise the label in the message tag is returned.
Definition at line 83 of file error_helper.
References l4_msgtag_t::has_error(), and L4_UNLIKELY.
|
inline |
Generate C++ exception on error.
t | Message tag. |
utcb | UTCB. |
extra | Optional text for exception (default "") |
This function throws an exception if the message tag contains an error or the label in the message tag is negative. Otherwise the label in the message tag is returned.
Definition at line 106 of file error_helper.
References chksys(), and L4_UNLIKELY.