Mark, On 17 Oct 2013, at 16:16, Mark Cave-Ayland wrote:
> I've tried it with FreeBSD and it doesn't make any difference; the fix > doesn't matter for the HelenOS regression as that timer is only setup for -M > mac99. > > To summarise what I've found today with HelenOS: I see failures with both 1.6 > and git master, but git master appears to be a lot worse in terms of > triggering the problem. > > Also with git master, I see time periods where the timer speeds up for a > couple of seconds at a time (as apparent by the HelenOS circling orbs) and > then slows back down again. And the keyboard (whilst sluggish under 1.6) is > very unresponsive under git master. > > I'm starting to wonder like Alex B if these changes have made an already > existing bug more apparent. Perhaps you might put some debugging in timerlist_run_timers() in qemu-timer.c before 'cb(opaque)', dumping the address of the timer (ts) and the expire time (ts->expire_time). If you see this firing off constantly (note the frequency you see the message and the increment in expire_time), you will know some timer is expiring too frequently. If that's the issue, it will be a matter of tracking it down, which can probably be achieved with gdb and putting a breakpoint in timer_mod_ns. Statistically you are likely to hit the "right" one, and backtrace should give you a clue as to what it is. Continue a few times and see if it's the right timer, and you should find the culprit. If it's an rtc problem on the other hand, you will have a a different issue. -- Alex Bligh