mirror of
https://github.com/genodelabs/genode.git
synced 2025-01-31 16:35:28 +00:00
21de42c45d
The new core-internal 'Address_space' interface enables cores RM service to flush mappings of a PD in which a given 'Rm_client' thread resides. Prior this patch, each platform invented their own way to flush mappings in the respective 'rm_session_support.cc' implementation. However, those implementations used to deal poorly with some corner cases. In particular, if a PD session was destroyed prior a RM session, the RM session would try to use no longer existing PD session. The new 'Address_space' uses the just added weak-pointer mechanism to deal with this issue. Furthermore, the generic 'Rm_session_component::detach' function has been improved to avoid duplicated unmap operations for platforms that implement the 'Address_space' interface. Therefore, it is related to issue #595. Right now, this is OKL4 only, but other platforms will follow.
This repository contains the L4/Fiasco-specific implementation of Genode. For instructions to build and start the Fiasco version of Genode, please consult the documentation located at 'base-fiasco/doc/fiasco.txt'.