mirror of
https://github.com/asterinas/asterinas.git
synced 2025-06-22 08:53:29 +00:00
Make the code a bit cleaner
This commit is contained in:
committed by
Tate, Hongliang Tian
parent
1fe74c9c92
commit
768b182aba
@ -88,16 +88,16 @@ impl<T: Sync + Send + PreemptSchedInfo + FromTask<U>, U: Sync + Send + CommonSch
|
|||||||
{
|
{
|
||||||
fn enqueue(&self, task: Arc<U>, flags: EnqueueFlags) -> Option<CpuId> {
|
fn enqueue(&self, task: Arc<U>, flags: EnqueueFlags) -> Option<CpuId> {
|
||||||
let entity = PreemptSchedEntity::new(task);
|
let entity = PreemptSchedEntity::new(task);
|
||||||
let mut still_in_rq = false;
|
|
||||||
let target_cpu = {
|
|
||||||
let mut cpu_id = self.select_cpu(&entity);
|
|
||||||
if let Err(task_cpu_id) = entity.task.cpu().set_if_is_none(cpu_id) {
|
|
||||||
debug_assert!(flags != EnqueueFlags::Spawn);
|
|
||||||
still_in_rq = true;
|
|
||||||
cpu_id = task_cpu_id;
|
|
||||||
}
|
|
||||||
|
|
||||||
cpu_id
|
let (still_in_rq, target_cpu) = {
|
||||||
|
let selected_cpu_id = self.select_cpu(&entity);
|
||||||
|
|
||||||
|
if let Err(task_cpu_id) = entity.task.cpu().set_if_is_none(selected_cpu_id) {
|
||||||
|
debug_assert!(flags != EnqueueFlags::Spawn);
|
||||||
|
(true, task_cpu_id)
|
||||||
|
} else {
|
||||||
|
(false, selected_cpu_id)
|
||||||
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
let mut rq = self.rq[target_cpu.as_usize()].disable_irq().lock();
|
let mut rq = self.rq[target_cpu.as_usize()].disable_irq().lock();
|
||||||
|
@ -41,16 +41,15 @@ impl<T: CommonSchedInfo> FifoScheduler<T> {
|
|||||||
|
|
||||||
impl<T: CommonSchedInfo + Send + Sync> Scheduler<T> for FifoScheduler<T> {
|
impl<T: CommonSchedInfo + Send + Sync> Scheduler<T> for FifoScheduler<T> {
|
||||||
fn enqueue(&self, runnable: Arc<T>, flags: EnqueueFlags) -> Option<CpuId> {
|
fn enqueue(&self, runnable: Arc<T>, flags: EnqueueFlags) -> Option<CpuId> {
|
||||||
let mut still_in_rq = false;
|
let (still_in_rq, target_cpu) = {
|
||||||
let target_cpu = {
|
let selected_cpu_id = self.select_cpu();
|
||||||
let mut cpu_id = self.select_cpu();
|
|
||||||
if let Err(task_cpu_id) = runnable.cpu().set_if_is_none(cpu_id) {
|
|
||||||
debug_assert!(flags != EnqueueFlags::Spawn);
|
|
||||||
still_in_rq = true;
|
|
||||||
cpu_id = task_cpu_id;
|
|
||||||
}
|
|
||||||
|
|
||||||
cpu_id
|
if let Err(task_cpu_id) = runnable.cpu().set_if_is_none(selected_cpu_id) {
|
||||||
|
debug_assert!(flags != EnqueueFlags::Spawn);
|
||||||
|
(true, task_cpu_id)
|
||||||
|
} else {
|
||||||
|
(false, selected_cpu_id)
|
||||||
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
let mut rq = self.rq[target_cpu.as_usize()].disable_irq().lock();
|
let mut rq = self.rq[target_cpu.as_usize()].disable_irq().lock();
|
||||||
|
Reference in New Issue
Block a user