mirror of
https://github.com/Motorhead1991/qemu.git
synced 2025-08-04 08:13:54 -06:00
openrisc: Only kick cpu on timeout, not on update
Previously we were kicking the cpu on every update. This caused problems noticeable in SMP configurations where one CPU got pinned continuously servicing timer exceptions. Reviewed-by: Richard Henderson <richard.henderson@linaro.org> Signed-off-by: Stafford Horne <shorne@gmail.com>
This commit is contained in:
parent
13f1c77364
commit
373b259b66
1 changed files with 1 additions and 1 deletions
|
@ -78,7 +78,6 @@ void cpu_openrisc_timer_update(OpenRISCCPU *cpu)
|
|||
}
|
||||
next = now + (uint64_t)wait * TIMER_PERIOD;
|
||||
timer_mod(cpu->env.timer, next);
|
||||
qemu_cpu_kick(CPU(cpu));
|
||||
}
|
||||
|
||||
void cpu_openrisc_count_start(OpenRISCCPU *cpu)
|
||||
|
@ -120,6 +119,7 @@ static void openrisc_timer_cb(void *opaque)
|
|||
}
|
||||
|
||||
cpu_openrisc_timer_update(cpu);
|
||||
qemu_cpu_kick(CPU(cpu));
|
||||
}
|
||||
|
||||
static const VMStateDescription vmstate_or1k_timer = {
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue