e0e9b3b32e
With this patch, init responds to the exit of a child by closing all sessions of the child. E.g., if a child is a GUI application, its nitpicker session is closed at the time of exit, not at the time when the start node disappears from init's configuration. Since this change requires a modification of the 'Genode::Child' class, it takes the chance to make the child-destruction less brutal. The new version ensures that all threads of the destructed subsystem are destructed before other sessions, in particular PD sessions. This eliminates spurious page-fault warnings during the child destruction. On Fiasco.OC, closing the CPU session of a thread while being called by the thread causes a deadlock. Hence, we skip the eager destruction of CPU sessions on this kernel. Related to issue #2659 |
||
---|---|---|
.. | ||
attached_stack_area.h | ||
capability_data.h | ||
capability_space_tpl.h | ||
capability_space.h | ||
child_policy.h | ||
crt0.h | ||
elf_format.h | ||
elf.h | ||
expanding_cpu_session_client.h | ||
expanding_parent_client.h | ||
expanding_pd_session_client.h | ||
expanding_region_map_client.h | ||
globals.h | ||
ipc_server.h | ||
output.h | ||
page_size.h | ||
parent_cap.h | ||
platform_env.h | ||
rpc_obj_key.h | ||
spin_lock.h | ||
stack_allocator.h | ||
stack_area.h | ||
stack.h | ||
trace_control.h | ||
unmanaged_singleton.h | ||
upgradeable_client.h |