From b55646e1b0aff56ae48e41d19ead1b53018fc909 Mon Sep 17 00:00:00 2001 From: Martin Stein Date: Thu, 27 Mar 2014 12:28:53 +0100 Subject: [PATCH] hw: remove Ipc_node::_received_ipc_request ref #1108 --- base-hw/src/core/kernel/ipc_node.h | 6 ------ base-hw/src/core/kernel/thread.cc | 19 ++++--------------- base-hw/src/core/kernel/thread.h | 1 - 3 files changed, 4 insertions(+), 22 deletions(-) diff --git a/base-hw/src/core/kernel/ipc_node.h b/base-hw/src/core/kernel/ipc_node.h index 81cee563f..ca5ecdbdc 100644 --- a/base-hw/src/core/kernel/ipc_node.h +++ b/base-hw/src/core/kernel/ipc_node.h @@ -181,11 +181,6 @@ class Kernel::Ipc_node } } - /** - * IPC node received a request without waiting - */ - virtual void _received_ipc_request(size_t const s) = 0; - /** * IPC node returned from waiting due to message receipt * @@ -278,7 +273,6 @@ class Kernel::Ipc_node /* if anybody already announced a request receive it */ if (!_request_queue.empty()) { _receive_request(_request_queue.dequeue()); - _received_ipc_request(_inbuf.size); return true; } /* no request announced, so wait */ diff --git a/base-hw/src/core/kernel/thread.cc b/base-hw/src/core/kernel/thread.cc index e10867d0d..50abadf33 100644 --- a/base-hw/src/core/kernel/thread.cc +++ b/base-hw/src/core/kernel/thread.cc @@ -71,20 +71,6 @@ void Thread::_receive_signal(void * const base, size_t const size) } -void Thread::_received_ipc_request(size_t const s) -{ - switch (_state) { - case SCHEDULED: - user_arg_0(0); - return; - default: - PWRN("wrong thread state to receive IPC"); - _stop(); - return; - } -} - - void Thread::_await_ipc_succeeded(size_t const s) { switch (_state) { @@ -418,7 +404,10 @@ void Thread::_call_await_request_msg() void * buf_base; size_t buf_size; _utcb_phys->message()->info_about_await_request(buf_base, buf_size); - if (Ipc_node::await_request(buf_base, buf_size)) { return; } + if (Ipc_node::await_request(buf_base, buf_size)) { + user_arg_0(0); + return; + } _unschedule(AWAITS_IPC); } diff --git a/base-hw/src/core/kernel/thread.h b/base-hw/src/core/kernel/thread.h index 84d9edced..40878d460 100644 --- a/base-hw/src/core/kernel/thread.h +++ b/base-hw/src/core/kernel/thread.h @@ -280,7 +280,6 @@ class Kernel::Thread ** Ipc_node ** **************/ - void _received_ipc_request(size_t const s); void _await_ipc_succeeded(size_t const s); void _await_ipc_failed();