mirror of
https://github.com/RGBCube/serenity
synced 2025-05-18 21:25:07 +00:00
Kernel: Factor our PreviousMode into RegisterState::previous_mode
Various places in the kernel were manually checking the cs register for x86_64, however to share this with aarch64 a function in RegisterState is added, and the call-sites are updated. While we're here the PreviousMode enum is renamed to ExecutionMode.
This commit is contained in:
parent
247109cee6
commit
fb10774862
11 changed files with 53 additions and 29 deletions
|
@ -427,7 +427,7 @@ void Scheduler::timer_tick(RegisterState const& regs)
|
|||
current_thread->update_time_scheduled(TimeManagement::scheduler_current_time(), true, false);
|
||||
}
|
||||
|
||||
if (current_thread->previous_mode() == Thread::PreviousMode::UserMode && current_thread->should_die() && !current_thread->is_blocked()) {
|
||||
if (current_thread->previous_mode() == ExecutionMode::User && current_thread->should_die() && !current_thread->is_blocked()) {
|
||||
SpinlockLocker scheduler_lock(g_scheduler_lock);
|
||||
dbgln_if(SCHEDULER_DEBUG, "Scheduler[{}]: Terminating user mode thread {}", Processor::current_id(), *current_thread);
|
||||
current_thread->set_state(Thread::State::Dying);
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue