mirror of
https://github.com/genodelabs/genode.git
synced 2025-06-18 23:28:29 +00:00
Removed linux-specific 'local_interface.h'
The Linux-specific mechanism has been superseded by the generic support for local capabilities in 'base/include/capability.h'.
This commit is contained in:
10
base-linux/src/base/env/platform_env.cc
vendored
10
base-linux/src/base/env/platform_env.cc
vendored
@ -38,7 +38,7 @@ Platform_env::Local_parent::session(Service_name const &service_name,
|
||||
Rm_session_mmap *rm = new (env()->heap())
|
||||
Rm_session_mmap(true, size);
|
||||
|
||||
return Local_interface::capability(rm);
|
||||
return Session_capability::local_cap(rm);
|
||||
}
|
||||
|
||||
return Parent_client::session(service_name, args);
|
||||
@ -58,13 +58,9 @@ void Platform_env::Local_parent::close(Session_capability session)
|
||||
/*
|
||||
* Detect capability to local RM session
|
||||
*/
|
||||
try {
|
||||
Capability<Rm_session_mmap> rm =
|
||||
static_cap_cast<Rm_session_mmap>(session);
|
||||
Capability<Rm_session_mmap> rm = static_cap_cast<Rm_session_mmap>(session);
|
||||
|
||||
destroy(env()->heap(), Local_interface::deref(rm));
|
||||
|
||||
} catch (Local_interface::Non_local_capability) { }
|
||||
destroy(env()->heap(), Capability<Rm_session_mmap>::deref(rm));
|
||||
}
|
||||
|
||||
|
||||
|
13
base-linux/src/base/env/rm_session_mmap.cc
vendored
13
base-linux/src/base/env/rm_session_mmap.cc
vendored
@ -24,7 +24,7 @@ static Genode::size_t dataspace_size(Dataspace_capability ds)
|
||||
if (ds.valid())
|
||||
return Dataspace_client(ds).size();
|
||||
|
||||
return Local_interface::deref(ds)->size();
|
||||
return Dataspace_capability::deref(ds)->size();
|
||||
}
|
||||
|
||||
|
||||
@ -33,12 +33,7 @@ static bool is_sub_rm_session(Dataspace_capability ds)
|
||||
if (ds.valid())
|
||||
return false;
|
||||
|
||||
try {
|
||||
Local_interface::deref(ds); }
|
||||
catch (Local_interface::Non_local_capability) {
|
||||
return false; }
|
||||
|
||||
return true;
|
||||
return Dataspace_capability::deref(ds) != 0;
|
||||
}
|
||||
|
||||
|
||||
@ -161,7 +156,7 @@ Platform_env::Rm_session_mmap::attach(Dataspace_capability ds,
|
||||
|
||||
if (is_sub_rm_session(ds)) {
|
||||
|
||||
Dataspace *ds_if = Local_interface::deref<Dataspace>(ds);
|
||||
Dataspace *ds_if = Dataspace_capability::deref(ds);
|
||||
|
||||
Rm_session_mmap *rm = dynamic_cast<Rm_session_mmap *>(ds_if);
|
||||
|
||||
@ -279,7 +274,7 @@ void Platform_env::Rm_session_mmap::detach(Rm_session::Local_addr local_addr)
|
||||
*/
|
||||
if (is_sub_rm_session(region.dataspace())) {
|
||||
|
||||
Dataspace *ds_if = Local_interface::deref<Dataspace>(region.dataspace());
|
||||
Dataspace *ds_if = Dataspace_capability::deref(region.dataspace());
|
||||
Rm_session_mmap *rm = dynamic_cast<Rm_session_mmap *>(ds_if);
|
||||
if (rm)
|
||||
rm->_base = 0;
|
||||
|
Reference in New Issue
Block a user