SMP - CPU local run queues
- each CPU has its own runqueues
- processes on BSP are put on the runqueues later after a switch to
the final stack when cpuid works to avoid special cases
- enqueue() and dequeue() use the run queues of the cpu the process is
assigned to
- pick_proc() uses the local run queues
- printing of per-CPU run queues ('2') on serial console
This commit is contained in:
@@ -252,8 +252,6 @@ struct proc {
|
||||
#ifndef __ASSEMBLY__
|
||||
|
||||
EXTERN struct proc proc[NR_TASKS + NR_PROCS]; /* process table */
|
||||
EXTERN struct proc *rdy_head[NR_SCHED_QUEUES]; /* ptrs to ready list headers */
|
||||
EXTERN struct proc *rdy_tail[NR_SCHED_QUEUES]; /* ptrs to ready list tails */
|
||||
|
||||
_PROTOTYPE( int mini_send, (struct proc *caller_ptr, endpoint_t dst_e,
|
||||
message *m_ptr, int flags));
|
||||
|
||||
Reference in New Issue
Block a user