From c04fd71e1ed3c0a1cb212883fb9f1a10bb60542b Mon Sep 17 00:00:00 2001 From: Matheus Date: Mon, 12 Sep 2022 09:57:45 -0300 Subject: [PATCH] Revert last commit --- src/sys/sched/scheduler.c | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/src/sys/sched/scheduler.c b/src/sys/sched/scheduler.c index 96ef2572..e6b80019 100644 --- a/src/sys/sched/scheduler.c +++ b/src/sys/sched/scheduler.c @@ -199,6 +199,8 @@ void sched_timerhook(arch_regs* regs){ timer_add(&arch_getcls()->schedreq, THREAD_QUANTUM, false); + + } void switch_thread(thread_t* thread){ @@ -209,7 +211,9 @@ void switch_thread(thread_t* thread){ arch_getcls()->thread = thread; - vmm_switchcontext(thread->ctx); + + if(current->ctx != thread->ctx) + vmm_switchcontext(thread->ctx); arch_setkernelstack(thread->kernelstack); @@ -418,6 +422,8 @@ void sched_runinit(){ timer_add(&arch_getcls()->schedreq, THREAD_QUANTUM, true); + printf("Switching to init thread\n"); + switch_thread(thread); __builtin_unreachable();