4d442bca30
This patch reduces the number of exception types by facilitating globally defined exceptions for common usage patterns shared by most services. In particular, RPC functions that demand a session-resource upgrade not longer reflect this condition via a session-specific exception but via the 'Out_of_ram' or 'Out_of_caps' types. Furthermore, the 'Parent::Service_denied', 'Parent::Unavailable', 'Root::Invalid_args', 'Root::Unavailable', 'Service::Invalid_args', 'Service::Unavailable', and 'Local_service::Factory::Denied' types have been replaced by the single 'Service_denied' exception type defined in 'session/session.h'. This consolidation eases the error handling (there are fewer exceptions to handle), alleviates the need to convert exceptions along the session-creation call chain, and avoids possible aliasing problems (catching the wrong type with the same name but living in a different scope). |
||
---|---|---|
.. | ||
include | ||
spec/x86 | ||
capability_space.cc | ||
core_mem_alloc.cc | ||
core_region_map.cc | ||
core_rpc_cap_alloc.cc | ||
cpu_session_component.cc | ||
cpu_session_support.cc | ||
cpu_thread_component.cc | ||
dataspace_component.cc | ||
default_log.cc | ||
dump_alloc.cc | ||
io_mem_session_component.cc | ||
main.cc | ||
pager_ep.cc | ||
pager_object.cc | ||
pd_assign_pci.cc | ||
pd_session_component.cc | ||
pd_upgrade_ram_quota.cc | ||
platform_services.cc | ||
ram_session_component.cc | ||
region_map_component.cc | ||
rom_session_component.cc | ||
rpc_cap_factory_l4.cc | ||
rpc_cap_factory.cc | ||
signal_source_component.cc | ||
stack_area.cc | ||
target.inc | ||
trace_session_component.cc | ||
version.cc | ||
version.inc |