base: remove deprecated cancel_blocking() support
for threads. Fixes #3806
This commit is contained in:
committed by
Norman Feske
parent
ce6f4dffe5
commit
f3efbe50bb
@@ -51,9 +51,6 @@ struct Genode::Cpu_thread_client : Rpc_client<Cpu_thread>
|
||||
void resume() override {
|
||||
call<Rpc_resume>(); }
|
||||
|
||||
void cancel_blocking() override {
|
||||
call<Rpc_cancel_blocking>(); }
|
||||
|
||||
Thread_state state() override {
|
||||
return call<Rpc_get_state>(); }
|
||||
|
||||
|
||||
@@ -256,12 +256,6 @@ namespace Genode {
|
||||
return true;
|
||||
}
|
||||
|
||||
/**
|
||||
* Cancel blocking in a lock so that recall exception can take
|
||||
* place.
|
||||
*/
|
||||
void client_cancel_blocking();
|
||||
|
||||
uint8_t client_recall(bool get_state_and_block);
|
||||
void client_set_ec(addr_t ec) { _state.sel_client_ec = ec; }
|
||||
|
||||
|
||||
@@ -123,11 +123,6 @@ namespace Genode {
|
||||
*/
|
||||
void resume();
|
||||
|
||||
/**
|
||||
* Cancel currently blocking operation
|
||||
*/
|
||||
void cancel_blocking();
|
||||
|
||||
/**
|
||||
* Override thread state with 's'
|
||||
*
|
||||
|
||||
@@ -450,21 +450,6 @@ void Pager_object::wake_up()
|
||||
}
|
||||
|
||||
|
||||
void Pager_object::client_cancel_blocking()
|
||||
{
|
||||
uint8_t res = sm_ctrl(exc_pt_sel_client() + SM_SEL_EC, SEMAPHORE_UP);
|
||||
if (res != NOVA_OK)
|
||||
warning("canceling blocked client failed (thread sm)");
|
||||
|
||||
if (!_state.has_signal_sm())
|
||||
return;
|
||||
|
||||
res = sm_ctrl(exc_pt_sel_client() + PT_SEL_STARTUP, SEMAPHORE_UP);
|
||||
if (res != NOVA_OK)
|
||||
warning("canceling blocked client failed (signal sm)");
|
||||
}
|
||||
|
||||
|
||||
uint8_t Pager_object::client_recall(bool get_state_and_block)
|
||||
{
|
||||
Mutex::Guard _state_lock_guard(_state_lock);
|
||||
|
||||
@@ -278,14 +278,6 @@ void Platform_thread::state(Thread_state s)
|
||||
}
|
||||
|
||||
|
||||
void Platform_thread::cancel_blocking()
|
||||
{
|
||||
if (!_pager) return;
|
||||
|
||||
_pager->client_cancel_blocking();
|
||||
}
|
||||
|
||||
|
||||
void Platform_thread::single_step(bool on)
|
||||
{
|
||||
if (!_pager) return;
|
||||
|
||||
@@ -150,12 +150,3 @@ void Thread::start()
|
||||
new (platform().core_mem_alloc())
|
||||
Core_trace_source(Trace::sources(), *this);
|
||||
}
|
||||
|
||||
|
||||
void Thread::cancel_blocking()
|
||||
{
|
||||
using namespace Nova;
|
||||
|
||||
if (sm_ctrl(native_thread().exc_pt_sel + SM_SEL_EC, SEMAPHORE_UP))
|
||||
nova_die();
|
||||
}
|
||||
|
||||
@@ -198,12 +198,3 @@ void Thread::start()
|
||||
/* request creation of SC to let thread run*/
|
||||
cpu_thread.resume();
|
||||
}
|
||||
|
||||
|
||||
void Thread::cancel_blocking()
|
||||
{
|
||||
using namespace Nova;
|
||||
|
||||
if (sm_ctrl(native_thread().exc_pt_sel + SM_SEL_EC, SEMAPHORE_UP))
|
||||
nova_die();
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user