base-linux: rm env_deprecated from region_map_mmap

Issue #4784
This commit is contained in:
Norman Feske
2023-03-10 13:44:48 +01:00
parent 73771669f1
commit 223e185b83
5 changed files with 43 additions and 35 deletions

View File

@ -67,7 +67,7 @@ Session_capability Local_parent::session(Parent::Client::Id id,
if (strcmp(service_name.string(), Rm_session::service_name()) == 0) {
Local_rm_session *local_rm_session = new (_alloc)
Local_rm_session(_alloc, _local_sessions_id_space, id);
Local_rm_session(_local_rm, _alloc, _local_sessions_id_space, id);
return local_rm_session->local_session_cap();
}
@ -101,9 +101,9 @@ Parent::Close_result Local_parent::close(Client::Id id)
Local_parent::Local_parent(Parent_capability parent_cap,
Allocator &alloc)
Region_map &local_rm, Allocator &alloc)
:
Expanding_parent_client(parent_cap), _alloc(alloc)
Expanding_parent_client(parent_cap), _local_rm(local_rm), _alloc(alloc)
{ }
@ -145,16 +145,23 @@ static Parent_capability obtain_parent_cap()
}
static Region_map_mmap &local_rm()
{
static Region_map_mmap local_rm(false);
return local_rm;
}
Local_parent &Platform_env::_parent()
{
static Local_parent local_parent(obtain_parent_cap(), _heap);
static Local_parent local_parent(obtain_parent_cap(), local_rm(), _heap);
return local_parent;
}
Platform_env::Platform_env()
:
Platform_env_base(_parent(),
Platform_env_base(_parent(), local_rm(),
static_cap_cast<Cpu_session>(_parent().session_cap(Parent::Env::cpu())),
static_cap_cast<Pd_session> (_parent().session_cap(Parent::Env::pd()))),
_heap(Platform_env_base::pd_session(), Platform_env_base::rm_session())