base-hw: obsolete Kernel::Thread::_signal_receiver

Ref #3308
This commit is contained in:
Martin Stein 2019-05-04 14:24:39 +02:00 committed by Christian Helmuth
parent 9eb20c2be7
commit 751e6430fa
3 changed files with 4 additions and 6 deletions

View File

@ -199,7 +199,7 @@ int Signal_receiver::add_handler(Signal_handler &h)
if (h._receiver) { return -1; } if (h._receiver) { return -1; }
_handlers.enqueue(h._handlers_fe); _handlers.enqueue(h._handlers_fe);
h._receiver = this; h._receiver = this;
h._thread.signal_wait_for_signal(*this); h._thread.signal_wait_for_signal();
_listen(); _listen();
return 0; return 0;
} }

View File

@ -165,10 +165,9 @@ void Thread::signal_context_kill_failed()
} }
void Thread::signal_wait_for_signal(Signal_receiver &receiver) void Thread::signal_wait_for_signal()
{ {
_become_inactive(AWAITS_SIGNAL); _become_inactive(AWAITS_SIGNAL);
_signal_receiver = &receiver;
} }
@ -821,7 +820,7 @@ Thread::Thread(unsigned const priority, unsigned const quota,
: :
Kernel::Object { *this }, Kernel::Object { *this },
Cpu_job(priority, quota), _ipc_node(*this), _state(AWAITS_START), Cpu_job(priority, quota), _ipc_node(*this), _state(AWAITS_START),
_signal_receiver(0), _label(label), _core(core), regs(core) { } _label(label), _core(core), regs(core) { }
void Thread::print(Genode::Output &out) const void Thread::print(Genode::Output &out) const

View File

@ -136,7 +136,6 @@ class Kernel::Thread : private Kernel::Object, public Cpu_job, private Timeout
State _state; State _state;
Signal_handler _signal_handler { *this }; Signal_handler _signal_handler { *this };
Signal_context_killer _signal_context_killer { *this }; Signal_context_killer _signal_context_killer { *this };
Signal_receiver *_signal_receiver;
char const *const _label; char const *const _label;
capid_t _timeout_sigid { 0 }; capid_t _timeout_sigid { 0 };
bool _paused { false }; bool _paused { false };
@ -378,7 +377,7 @@ class Kernel::Thread : private Kernel::Object, public Cpu_job, private Timeout
void signal_context_kill_pending(); void signal_context_kill_pending();
void signal_context_kill_failed(); void signal_context_kill_failed();
void signal_context_kill_done(); void signal_context_kill_done();
void signal_wait_for_signal(Signal_receiver &receiver); void signal_wait_for_signal();
void signal_receive_signal(void * const base, size_t const size); void signal_receive_signal(void * const base, size_t const size);