diff --git a/kernel/src/arch/x86_64/interrupt/handle.rs b/kernel/src/arch/x86_64/interrupt/handle.rs index 4696aa0c..0f8a4285 100644 --- a/kernel/src/arch/x86_64/interrupt/handle.rs +++ b/kernel/src/arch/x86_64/interrupt/handle.rs @@ -43,7 +43,7 @@ unsafe extern "C" fn x86_64_do_irq(trap_frame: &mut TrapFrame, vector: u32) { } // 检测当前进程是否可被调度 if (current_pcb_flags().contains(ProcessFlags::NEED_SCHEDULE)) - && vector == APIC_TIMER_IRQ_NUM.data() + || vector == APIC_TIMER_IRQ_NUM.data() { __schedule(SchedMode::SM_PREEMPT); }