Kernel: Make block() and yield() automatically call Scheduler::yield().

This exposed some places we were accidentally doing a double yield().
This commit is contained in:
Andreas Kling 2019-03-24 01:52:10 +01:00
commit 239c0bd6a6
Notes: sideshowbarker 2024-07-19 14:57:32 +09:00
6 changed files with 10 additions and 28 deletions

View file

@ -83,6 +83,7 @@ public:
dword ticks() const { return m_ticks; }
pid_t waitee_pid() const { return m_waitee_pid; }
void sleep(dword ticks);
void block(Thread::State);
void unblock();
@ -167,8 +168,6 @@ private:
extern InlineLinkedList<Thread>* g_threads;
const char* to_string(Thread::State);
void block(Thread::State);
void sleep(dword ticks);
template<typename Callback>
inline void Thread::for_each_in_state(State state, Callback callback)