[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH 5/5] openrisc: Only kick cpu on timeout, not on upda
From: |
Stafford Horne |
Subject: |
[Qemu-devel] [PATCH 5/5] openrisc: Only kick cpu on timeout, not on update |
Date: |
Wed, 23 Aug 2017 14:57:13 +0900 |
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.
Signed-off-by: Stafford Horne <address@hidden>
---
hw/openrisc/cputimer.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/hw/openrisc/cputimer.c b/hw/openrisc/cputimer.c
index 4c5415ff75..850f88761c 100644
--- a/hw/openrisc/cputimer.c
+++ b/hw/openrisc/cputimer.c
@@ -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 = {
--
2.13.5
- [Qemu-devel] [PATCH 0/5] OpenRISC SMP Support, Stafford Horne, 2017/08/23
- [Qemu-devel] [PATCH 1/5] openrisc/ompic: Add OpenRISC Multicore PIC (OMPIC), Stafford Horne, 2017/08/23
- [Qemu-devel] [PATCH 2/5] target/openrisc: Make coreid and numcores configurable in state, Stafford Horne, 2017/08/23
- [Qemu-devel] [PATCH 3/5] openrisc/cputimer: Perparation for Multicore, Stafford Horne, 2017/08/23
- [Qemu-devel] [PATCH 4/5] openrisc: Initial SMP support, Stafford Horne, 2017/08/23
- [Qemu-devel] [PATCH 5/5] openrisc: Only kick cpu on timeout, not on update,
Stafford Horne <=