mirror of
https://github.com/genodelabs/genode.git
synced 2025-06-18 07:08:18 +00:00
Warn about the use of deprecated env() function
This patch enables warnings if one of the deprecate functions that rely in the implicit use of the global Genode::env() accessor are called. For the time being, some places within the base framework continue to rely on the global function while omitting the warning by calling 'env_deprecated' instead of 'env'. Issue #1987
This commit is contained in:
@ -34,7 +34,7 @@ namespace {
|
||||
{
|
||||
Genode::Entrypoint &_ep;
|
||||
|
||||
Genode::Parent &_parent = *env()->parent();
|
||||
Genode::Parent &_parent = *env_deprecated()->parent();
|
||||
|
||||
/**
|
||||
* Lock for serializing 'session' and 'close'
|
||||
@ -63,25 +63,25 @@ namespace {
|
||||
Env(Genode::Entrypoint &ep) : _ep(ep) { env_ptr = this; }
|
||||
|
||||
Genode::Parent &parent() override { return _parent; }
|
||||
Genode::Ram_session &ram() override { return *Genode::env()->ram_session(); }
|
||||
Genode::Cpu_session &cpu() override { return *Genode::env()->cpu_session(); }
|
||||
Genode::Region_map &rm() override { return *Genode::env()->rm_session(); }
|
||||
Genode::Pd_session &pd() override { return *Genode::env()->pd_session(); }
|
||||
Genode::Ram_session &ram() override { return *Genode::env_deprecated()->ram_session(); }
|
||||
Genode::Cpu_session &cpu() override { return *Genode::env_deprecated()->cpu_session(); }
|
||||
Genode::Region_map &rm() override { return *Genode::env_deprecated()->rm_session(); }
|
||||
Genode::Pd_session &pd() override { return *Genode::env_deprecated()->pd_session(); }
|
||||
Genode::Entrypoint &ep() override { return _ep; }
|
||||
|
||||
Genode::Ram_session_capability ram_session_cap() override
|
||||
{
|
||||
return Genode::env()->ram_session_cap();
|
||||
return Genode::env_deprecated()->ram_session_cap();
|
||||
}
|
||||
|
||||
Genode::Cpu_session_capability cpu_session_cap() override
|
||||
{
|
||||
return Genode::env()->cpu_session_cap();
|
||||
return Genode::env_deprecated()->cpu_session_cap();
|
||||
}
|
||||
|
||||
Genode::Pd_session_capability pd_session_cap() override
|
||||
{
|
||||
return Genode::env()->pd_session_cap();
|
||||
return Genode::env_deprecated()->pd_session_cap();
|
||||
}
|
||||
|
||||
Genode::Id_space<Parent::Client> &id_space() override
|
||||
|
@ -15,7 +15,11 @@
|
||||
/* Genode includes */
|
||||
#include <base/entrypoint.h>
|
||||
#include <base/component.h>
|
||||
|
||||
#define INCLUDED_BY_ENTRYPOINT_CC /* prevent "deprecated" warning */
|
||||
#include <cap_session/connection.h>
|
||||
#undef INCLUDED_BY_ENTRYPOINT_CC
|
||||
|
||||
#include <util/retry.h>
|
||||
|
||||
/* base-internal includes */
|
||||
|
@ -22,7 +22,7 @@ namespace Genode {
|
||||
/*
|
||||
* Request pointer to static environment of the Genode application
|
||||
*/
|
||||
Env_deprecated *env()
|
||||
Env_deprecated *env_deprecated()
|
||||
{
|
||||
/*
|
||||
* By placing the environment as static object here, we ensure that its
|
||||
|
@ -30,7 +30,7 @@ class Log_console : public Console
|
||||
struct Log : Log_session_client
|
||||
{
|
||||
Session_capability _cap() {
|
||||
return env()->parent()->session_cap(Parent::Env::log()); }
|
||||
return env_deprecated()->parent()->session_cap(Parent::Env::log()); }
|
||||
|
||||
Log() : Log_session_client(reinterpret_cap_cast<Log_session>(_cap()))
|
||||
{ }
|
||||
|
@ -26,8 +26,8 @@ Native_capability Rpc_entrypoint::_alloc_rpc_cap(Pd_session &pd,
|
||||
Untyped_capability new_obj_cap =
|
||||
retry<Genode::Pd_session::Out_of_metadata>(
|
||||
[&] () { return pd.alloc_rpc_cap(_cap); },
|
||||
[&] () { env()->parent()->upgrade(Parent::Env::pd(),
|
||||
"ram_quota=16K"); });
|
||||
[&] () { env_deprecated()->parent()->upgrade(Parent::Env::pd(),
|
||||
"ram_quota=16K"); });
|
||||
|
||||
return new_obj_cap;
|
||||
}
|
||||
|
@ -41,7 +41,7 @@ class Signal_handler_thread : Thread, Lock
|
||||
|
||||
void entry()
|
||||
{
|
||||
_signal_source.construct(env()->pd_session()->alloc_signal_source());
|
||||
_signal_source.construct(env_deprecated()->pd_session()->alloc_signal_source());
|
||||
unlock();
|
||||
Signal_receiver::dispatch_signals(&(*_signal_source));
|
||||
}
|
||||
@ -68,7 +68,7 @@ class Signal_handler_thread : Thread, Lock
|
||||
|
||||
~Signal_handler_thread()
|
||||
{
|
||||
env()->pd_session()->free_signal_source(*_signal_source);
|
||||
env_deprecated()->pd_session()->free_signal_source(*_signal_source);
|
||||
}
|
||||
};
|
||||
|
||||
@ -232,7 +232,7 @@ Signal_context_capability Signal_receiver::manage(Signal_context *context)
|
||||
retry<Pd_session::Out_of_metadata>(
|
||||
[&] () {
|
||||
/* use signal context as imprint */
|
||||
context->_cap = env()->pd_session()->alloc_context(_cap, (long)context);
|
||||
context->_cap = env_deprecated()->pd_session()->alloc_context(_cap, (long)context);
|
||||
},
|
||||
[&] () {
|
||||
size_t const quota = 1024*sizeof(long);
|
||||
@ -241,7 +241,7 @@ Signal_context_capability Signal_receiver::manage(Signal_context *context)
|
||||
|
||||
log("upgrading quota donation for PD session (", quota, " bytes)");
|
||||
|
||||
env()->parent()->upgrade(Parent::Env::pd(), buf);
|
||||
env_deprecated()->parent()->upgrade(Parent::Env::pd(), buf);
|
||||
}
|
||||
);
|
||||
|
||||
|
@ -190,7 +190,7 @@ void Signal_receiver::_unsynchronized_dissolve(Signal_context * const context)
|
||||
_platform_begin_dissolve(context);
|
||||
|
||||
/* tell core to stop sending signals referring to the context */
|
||||
env()->pd_session()->free_context(context->_cap);
|
||||
env_deprecated()->pd_session()->free_context(context->_cap);
|
||||
|
||||
/* restore default initialization of signal context */
|
||||
context->_receiver = 0;
|
||||
|
@ -27,5 +27,5 @@ void Signal_transmitter::submit(unsigned cnt)
|
||||
{
|
||||
Trace::Signal_submit trace_event(cnt);
|
||||
}
|
||||
env()->pd_session()->submit(_context, cnt);
|
||||
env_deprecated()->pd_session()->submit(_context, cnt);
|
||||
}
|
||||
|
@ -223,7 +223,7 @@ Thread::Thread(size_t weight, const char *name, size_t stack_size,
|
||||
if (_cpu_session) {
|
||||
Dataspace_capability ds = _cpu_session->trace_control();
|
||||
if (ds.valid())
|
||||
_trace_control = env()->rm_session()->attach(ds);
|
||||
_trace_control = env_deprecated()->rm_session()->attach(ds);
|
||||
}
|
||||
}
|
||||
|
||||
@ -262,5 +262,5 @@ Thread::~Thread()
|
||||
* detached trace control dataspace.
|
||||
*/
|
||||
if (_trace_control)
|
||||
env()->rm_session()->detach(_trace_control);
|
||||
env_deprecated()->rm_session()->detach(_trace_control);
|
||||
}
|
||||
|
@ -59,7 +59,7 @@ void Thread::_thread_start()
|
||||
void Thread::_deinit_platform_thread()
|
||||
{
|
||||
if (!_cpu_session)
|
||||
_cpu_session = env()->cpu_session();
|
||||
_cpu_session = env_deprecated()->cpu_session();
|
||||
|
||||
_cpu_session->kill_thread(_thread_cap);
|
||||
}
|
||||
@ -69,11 +69,11 @@ void Thread::start()
|
||||
{
|
||||
/* if no CPU session is given, use it from the environment */
|
||||
if (!_cpu_session)
|
||||
_cpu_session = env()->cpu_session();
|
||||
_cpu_session = env_deprecated()->cpu_session();
|
||||
|
||||
/* create thread at core */
|
||||
addr_t const utcb = (addr_t)&_stack->utcb();
|
||||
_thread_cap = _cpu_session->create_thread(env()->pd_session_cap(), name(),
|
||||
_thread_cap = _cpu_session->create_thread(env_deprecated()->pd_session_cap(), name(),
|
||||
_affinity, Weight(), utcb);
|
||||
if (!_thread_cap.valid())
|
||||
throw Cpu_session::Thread_creation_failed();
|
||||
|
@ -47,13 +47,13 @@ bool Trace::Logger::_evaluate_control()
|
||||
|
||||
/* unload policy */
|
||||
if (policy_module) {
|
||||
env()->rm_session()->detach(policy_module);
|
||||
env_deprecated()->rm_session()->detach(policy_module);
|
||||
policy_module = 0;
|
||||
}
|
||||
|
||||
/* unmap trace buffer */
|
||||
if (buffer) {
|
||||
env()->rm_session()->detach(buffer);
|
||||
env_deprecated()->rm_session()->detach(buffer);
|
||||
buffer = 0;
|
||||
}
|
||||
|
||||
@ -88,7 +88,7 @@ bool Trace::Logger::_evaluate_control()
|
||||
max_event_size = 0;
|
||||
policy_module = 0;
|
||||
|
||||
policy_module = env()->rm_session()->attach(policy_ds);
|
||||
policy_module = env_deprecated()->rm_session()->attach(policy_ds);
|
||||
|
||||
/* relocate function pointers of policy callback table */
|
||||
for (unsigned i = 0; i < sizeof(Trace::Policy_module)/sizeof(void *); i++) {
|
||||
@ -111,7 +111,7 @@ bool Trace::Logger::_evaluate_control()
|
||||
}
|
||||
|
||||
try {
|
||||
buffer = env()->rm_session()->attach(buffer_ds);
|
||||
buffer = env_deprecated()->rm_session()->attach(buffer_ds);
|
||||
buffer->init(Dataspace_client(buffer_ds).size());
|
||||
} catch (...) { }
|
||||
|
||||
@ -200,17 +200,17 @@ Trace::Logger *Thread::_logger()
|
||||
logger->init_pending(true);
|
||||
|
||||
Thread_capability thread_cap = myself ? myself->_thread_cap
|
||||
: env()->parent()->main_thread_cap();
|
||||
: env_deprecated()->parent()->main_thread_cap();
|
||||
|
||||
Genode::Cpu_session *cpu = myself ? myself->_cpu_session
|
||||
: env()->cpu_session();
|
||||
if (!cpu) cpu = env()->cpu_session();
|
||||
: env_deprecated()->cpu_session();
|
||||
if (!cpu) cpu = env_deprecated()->cpu_session();
|
||||
|
||||
if (!myself)
|
||||
if (!main_trace_control) {
|
||||
Dataspace_capability ds = env()->cpu_session()->trace_control();
|
||||
Dataspace_capability ds = env_deprecated()->cpu_session()->trace_control();
|
||||
if (ds.valid())
|
||||
main_trace_control = env()->rm_session()->attach(ds);
|
||||
main_trace_control = env_deprecated()->rm_session()->attach(ds);
|
||||
}
|
||||
|
||||
logger->init(thread_cap, cpu,
|
||||
|
@ -113,7 +113,7 @@ extern "C" void *abort(void)
|
||||
|
||||
/* Notify the parent of failure */
|
||||
if (name != "main")
|
||||
env()->parent()->exit(1);
|
||||
env_deprecated()->parent()->exit(1);
|
||||
|
||||
sleep_forever();
|
||||
return 0;
|
||||
|
@ -186,7 +186,7 @@ void genode_exit(int status)
|
||||
for (func = &_dtors_start; func != &_dtors_end; (*func++)());
|
||||
|
||||
/* inform parent about the exit status */
|
||||
Genode::env()->parent()->exit(status);
|
||||
Genode::env_deprecated()->parent()->exit(status);
|
||||
|
||||
/* wait for destruction by the parent */
|
||||
Genode::sleep_forever();
|
||||
|
@ -97,7 +97,7 @@ extern "C" void init_main_thread()
|
||||
* Explicitly setup program environment at this point to ensure that its
|
||||
* destructor won't be registered for the atexit routine.
|
||||
*/
|
||||
(void*)env();
|
||||
(void*)env_deprecated();
|
||||
init_log();
|
||||
|
||||
/* create a thread object for the main thread */
|
||||
|
Reference in New Issue
Block a user