diff options
Diffstat (limited to 'src/arch/x86')
-rw-r--r-- | src/arch/x86/interrupts.cc | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/src/arch/x86/interrupts.cc b/src/arch/x86/interrupts.cc index 9983d7305..ad9d483c7 100644 --- a/src/arch/x86/interrupts.cc +++ b/src/arch/x86/interrupts.cc @@ -597,9 +597,10 @@ X86ISA::Interrupts::setReg(ApicRegIndex reg, uint32_t val) curTick() + (newCount + 1) * clockPeriod() - offset, true); } else { - reschedule(apicTimerEvent, - curTick() + newCount * - clockPeriod(), true); + if (newCount) + reschedule(apicTimerEvent, + curTick() + newCount * + clockPeriod(), true); } } break; |