mirror of https://github.com/xqemu/xqemu.git
ARM: hw/exynos4210_mct.c: Fix a bug which hangs Linux kernel.
After some long period of time Linux kernel hanged due to ptimer_get_count may return 0 before timer interrupt occurs, thus, causing FRC to jump back in time Signed-off-by: Evgeny Voevodin <e.voevodin@samsung.com> Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
This commit is contained in:
parent
71ea2e0161
commit
2e2aafc0f6
|
@ -376,10 +376,6 @@ static uint64_t exynos4210_gfrc_get_count(Exynos4210MCTGT *s)
|
||||||
{
|
{
|
||||||
uint64_t count = 0;
|
uint64_t count = 0;
|
||||||
count = ptimer_get_count(s->ptimer_frc);
|
count = ptimer_get_count(s->ptimer_frc);
|
||||||
if (!count) {
|
|
||||||
/* Timer event was generated and s->reg.cnt holds adequate value */
|
|
||||||
return s->reg.cnt;
|
|
||||||
}
|
|
||||||
count = s->count - count;
|
count = s->count - count;
|
||||||
return s->reg.cnt + count;
|
return s->reg.cnt + count;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue