diff --git a/src/kernel/objects/thread.cpp b/src/kernel/objects/thread.cpp index ead4ab8..b8f294a 100644 --- a/src/kernel/objects/thread.cpp +++ b/src/kernel/objects/thread.cpp @@ -20,7 +20,7 @@ static constexpr j6_signal_t thread_default_signals = 0; thread::thread(process &parent, uint8_t pri, uintptr_t rsp0) : kobject(kobject::type::thread, thread_default_signals), m_parent(parent), - m_state(state::loading), + m_state(state::none), m_wait_type(wait_type::none), m_wait_data(0), m_wait_obj(0) diff --git a/src/kernel/objects/thread.h b/src/kernel/objects/thread.h index 2338258..9d5e671 100644 --- a/src/kernel/objects/thread.h +++ b/src/kernel/objects/thread.h @@ -67,11 +67,11 @@ public: constexpr static j6_cap_t parent_caps = j6_cap_thread_all; enum class state : uint8_t { + none = 0x00, ready = 0x01, - loading = 0x02, - exited = 0x04, - constant = 0x80, - none = 0x00 + exited = 0x02, + + constant = 0x80 }; /// Destructor @@ -86,10 +86,6 @@ public: /// \returns True if the thread is ready to execute. inline bool ready() const { return has_state(state::ready); } - /// Get the `loading` state of the thread. - /// \returns True if the thread has not finished loading. - inline bool loading() const { return has_state(state::loading); } - /// Get the `constant` state of the thread. /// \returns True if the thread has constant priority. inline bool constant() const { return has_state(state::constant); } diff --git a/src/kernel/syscalls/thread.cpp b/src/kernel/syscalls/thread.cpp index bc75fa2..4debc09 100644 --- a/src/kernel/syscalls/thread.cpp +++ b/src/kernel/syscalls/thread.cpp @@ -19,7 +19,6 @@ thread_create(j6_handle_t *self, process *proc, uintptr_t stack_top, uintptr_t e thread *child = proc->create_thread(stack_top); child->add_thunk_user(entrypoint); *self = child->self_handle(); - child->clear_state(thread::state::loading); child->set_state(thread::state::ready); log::debug(logs::task, "Thread %llx:%llx spawned new thread %llx:%llx",