Message type for SCHEDULING_NO_QUANTUM, SYS_SCHEDULE

Change-Id: Ia0f2689067159b4d821092d4ac60efa75e396f7c
This commit is contained in:
2014-05-14 16:59:14 +02:00
parent 8ba159d242
commit b694a09a53
5 changed files with 42 additions and 24 deletions

View File

@@ -1806,13 +1806,13 @@ static void notify_scheduler(struct proc *p)
*/
m_no_quantum.m_source = p->p_endpoint;
m_no_quantum.m_type = SCHEDULING_NO_QUANTUM;
m_no_quantum.SCHEDULING_ACNT_QUEUE = cpu_time_2_ms(p->p_accounting.time_in_queue);
m_no_quantum.SCHEDULING_ACNT_DEQS = p->p_accounting.dequeues;
m_no_quantum.SCHEDULING_ACNT_IPC_SYNC = p->p_accounting.ipc_sync;
m_no_quantum.SCHEDULING_ACNT_IPC_ASYNC = p->p_accounting.ipc_async;
m_no_quantum.SCHEDULING_ACNT_PREEMPT = p->p_accounting.preempted;
m_no_quantum.SCHEDULING_ACNT_CPU = cpuid;
m_no_quantum.SCHEDULING_ACNT_CPU_LOAD = cpu_load();
m_no_quantum.m_krn_lsys_schedule.acnt_queue = cpu_time_2_ms(p->p_accounting.time_in_queue);
m_no_quantum.m_krn_lsys_schedule.acnt_deqs = p->p_accounting.dequeues;
m_no_quantum.m_krn_lsys_schedule.acnt_ipc_sync = p->p_accounting.ipc_sync;
m_no_quantum.m_krn_lsys_schedule.acnt_ipc_async = p->p_accounting.ipc_async;
m_no_quantum.m_krn_lsys_schedule.acnt_preempt = p->p_accounting.preempted;
m_no_quantum.m_krn_lsys_schedule.acnt_cpu = cpuid;
m_no_quantum.m_krn_lsys_schedule.acnt_cpu_load = cpu_load();
/* Reset accounting */
reset_proc_accounting(p);

View File

@@ -11,7 +11,7 @@ int do_schedule(struct proc * caller, message * m_ptr)
int proc_nr;
int priority, quantum, cpu;
if (!isokendpt(m_ptr->SCHEDULING_ENDPOINT, &proc_nr))
if (!isokendpt(m_ptr->m_lsys_krn_schedule.endpoint, &proc_nr))
return EINVAL;
p = proc_addr(proc_nr);
@@ -21,9 +21,9 @@ int do_schedule(struct proc * caller, message * m_ptr)
return(EPERM);
/* Try to schedule the process. */
priority = (int) m_ptr->SCHEDULING_PRIORITY;
quantum = (int) m_ptr->SCHEDULING_QUANTUM;
cpu = (int) m_ptr->SCHEDULING_CPU;
priority = m_ptr->m_lsys_krn_schedule.priority;
quantum = m_ptr->m_lsys_krn_schedule.quantum;
cpu = m_ptr->m_lsys_krn_schedule.cpu;
return sched_proc(p, priority, quantum, cpu);
}