Make cpu->proc_run_q_count not atomic

This commit is contained in:
2026-02-22 14:03:51 +01:00
parent 85872b856b
commit e69606668d
4 changed files with 16 additions and 7 deletions

View File

@@ -37,7 +37,7 @@ void proc_sq_suspend (struct proc* proc, struct proc_suspension_q* sq, spin_lock
list_append (proc->sq_entries, &sq_entry->proc_link);
list_remove (cpu->proc_run_q, &proc->cpu_run_q_link);
atomic_fetch_sub (&cpu->proc_run_q_count, 1);
cpu->proc_run_q_count--;
if (cpu->proc_current == proc)
cpu->proc_current = NULL;
@@ -73,7 +73,7 @@ void proc_sq_resume (struct proc* proc, struct proc_sq_entry* sq_entry,
atomic_store (&proc->state, PROC_READY);
list_append (cpu->proc_run_q, &proc->cpu_run_q_link);
atomic_fetch_add (&cpu->proc_run_q_count, 1);
cpu->proc_run_q_count++;
spin_unlock (&sq->lock);
spin_unlock (&proc->lock);