Home
last modified time | relevance | path

Searched refs:sched_info (Results 1 – 16 of 16) sorted by relevance

/DragonOS/kernel/src/sched/
H A Dmod.rs323 sched_info: SchedInfo, field
352 sched_info: SchedInfo::default(), in new()
405 let sched_info = pcb.sched_info().sched_stat.upgradeable_read_irqsave(); in enqueue_task() localVariable
406 if sched_info.last_queued == 0 { in enqueue_task()
407 sched_info.upgrade().last_queued = self.clock; in enqueue_task()
411 match pcb.sched_info().policy() { in enqueue_task()
429 let sched_info = pcb.sched_info().sched_stat.upgradeable_read_irqsave(); in dequeue_task() localVariable
431 if sched_info.last_queued > 0 { in dequeue_task()
432 let delta = self.clock - sched_info.last_queued; in dequeue_task()
434 let mut sched_info = sched_info.upgrade(); in dequeue_task() localVariable
[all …]
H A Dsyscall.rs19 let rq = cpu_rq(pcb.sched_info().on_cpu().unwrap_or(current_cpu_id()).data() as usize); in do_sched_yield()
H A Dfair.rs163 return self.pcb().sched_info().policy() == SchedPolicy::IDLE; in is_idle()
1412 let mut se = pcb.sched_info().sched_entity(); in enqueue()
1413 let mut idle_h_nr_running = pcb.sched_info().policy() == SchedPolicy::IDLE; in enqueue()
1474 let mut se = pcb.sched_info().sched_entity(); in dequeue()
1475 let mut idle_h_nr_running = pcb.sched_info().policy() == SchedPolicy::IDLE; in dequeue()
1544 let se = curr.sched_info().sched_entity(); in yield_task()
1569 let mut se = curr.sched_info().sched_entity(); in check_preempt_currnet()
1570 let mut pse = pcb.sched_info().sched_entity(); in check_preempt_currnet()
1603 if unlikely(curr.sched_info().policy() == SchedPolicy::IDLE) in check_preempt_currnet()
1604 && likely(pcb.sched_info().policy() != SchedPolicy::IDLE) in check_preempt_currnet()
[all …]
H A Dpelt.rs168 let se = pcb.sched_info().sched_entity(); in post_init_entity_util_avg()
177 if pcb.sched_info().policy() != SchedPolicy::CFS { in post_init_entity_util_avg()
/DragonOS/kernel/src/process/
H A Didle.rs60 assert!(idle_pcb.sched_info().on_cpu().is_none()); in init_idle()
61 idle_pcb.sched_info().set_on_cpu(Some(ProcessorId::new(i))); in init_idle()
62 *idle_pcb.sched_info().sched_policy.write_irqsave() = crate::sched::SchedPolicy::IDLE; in init_idle()
69 *idle_pcb.sched_info().on_rq.lock_irqsave() = OnRq::Queued; in init_idle()
72 .sched_info() in init_idle()
H A Dmod.rs230 let state = pcb.sched_info().inner_lock_read_irqsave().state(); in wakeup()
232 let mut writer = pcb.sched_info().inner_lock_write_irqsave(); in wakeup()
242 cpu_rq(pcb.sched_info().on_cpu().unwrap_or(current_cpu_id()).data() as usize); in wakeup()
270 let state = pcb.sched_info().inner_lock_read_irqsave().state(); in wakeup_stop()
272 let mut writer = pcb.sched_info().inner_lock_write_irqsave(); in wakeup_stop()
279 let rq = cpu_rq(pcb.sched_info().on_cpu().unwrap().data() as usize); in wakeup_stop()
317 let mut writer = pcb.sched_info().inner_lock_write_irqsave(); in mark_sleep()
342 let mut writer = pcb.sched_info().inner_lock_write_irqsave(); in mark_stop()
390 pcb.sched_info in exit()
493 let cpu_id = pcb.sched_info().on_cpu(); in kick()
[all …]
H A Dexit.rs158 let state = pcb.sched_info().inner_lock_read_irqsave().state(); in do_wait()
184 let state = child_pcb.sched_info().inner_lock_read_irqsave().state(); in do_waitpid()
H A Dfork.rs192 pcb.sched_info().set_on_cpu(Some(smp_get_processor_id())); in fork()
H A Dkthread.rs407 if let ProcessState::Exited(code) = pcb.sched_info().inner_lock_read_irqsave().state() { in stop()
/DragonOS/kernel/src/libs/
H A Dwait_queue.rs53 let mut writer = pcb.sched_info().inner_lock_write_irqsave(); in finish_wait()
231 .sched_info() in wakeup()
260 if to_wakeup.sched_info().inner_lock_read_irqsave().state() == state { in wakeup_all()
/DragonOS/kernel/src/init/
H A Dinitial_kthread.rs72 *current_pcb.sched_info().sched_policy.write_irqsave() = crate::sched::SchedPolicy::CFS; in switch_to_user()
/DragonOS/kernel/src/ipc/
H A Dsignal.rs234 let state = pcb.sched_info().inner_lock_read_irqsave().state(); in wants_signal()
318 let state = pcb.sched_info().inner_lock_read_irqsave().state(); in signal_wake_up()
/DragonOS/kernel/src/smp/cpu/
H A Dmod.rs261 let cpu_id = pcb.sched_info().on_cpu().ok_or(SystemError::EINVAL)?; in do_cpuhp_kick_ap()
/DragonOS/kernel/src/mm/
H A Dfault.rs129 let mut guard = current_pcb.sched_info().inner_lock_write_irqsave(); in handle_mm_fault()
/DragonOS/kernel/src/filesystem/procfs/
H A Dmod.rs167 let sched_info_guard = pcb.sched_info(); in open_status()
/DragonOS/docs/community/ChangeLog/V0.1.x/
H A DV0.1.9.md1894 * 调整pcb的sched_info和rwlock,以避免调度器死锁问题 (#341)
1896 * 调整pcb的sched_info和rwlock,以避免调度器死锁问题