From: Edgar E. Iglesias <edgar.igles...@gmail.com> Linux runs a test to check if the internal r4k timer is usable prior to enabling it. The test basically starts a timer, repeatedly compares cp0_count with cp0_compare and finally when the timer should have hit it verifies that the irq line is asserted. Depending on host timing, qemu may fail this test. On my x86_64 host, we basically always fail it.
The following set of patches makes qemu pass the test reliably. Edgar E. Iglesias (3): mips: Break TBs after mfc0_count mips: Break out cpu_mips_timer_expire mips: Expire late timers when reading cp0_count hw/mips_timer.c | 43 +++++++++++++++++++++++++++++-------------- target-mips/translate.c | 4 +++- 2 files changed, 32 insertions(+), 15 deletions(-) -- 1.7.2.2