On 01/04/2010 02:01 PM, Michael S. Tsirkin wrote:
On Mon, Jan 04, 2010 at 02:24:53PM -0600, Anthony Liguori wrote:
On 12/21/2009 02:09 AM, Paolo Bonzini wrote:
Make the timer subsystem register its own bottom half instead of
placing the bottom half code in the heart of the main loop.  To
test if an alarm timer is pending, just check if the bottom half is
scheduled.

Signed-off-by: Paolo Bonzini<pbonz...@redhat.com>
I'm not a huge fan of this for a couple reasons.  The first is that it
introduces a subtle semantic change.  Previously, timers always ran
before bottom halves whereas after this change, timers may run after
some bottoms halves but before others.  While this should be okay in
principle, in practice, I'm sure it'll introduce regressions.  I'd be
very surprised if cris wasn't affected by this.

But more importantly, I think timer dispatch needs to be part of the
select loop.  malc has a git tree that replaces host alarm timers with
select() timeouts.
Where is that tree?

http://repo.or.cz/w/qemu/malc.git  mtloop

IMO we need that, I am not sure all code is as signal-safe
as it should be. At least crashes that I saw with winxp install
seem to be related to signal handling.

Regards,

Anthony Liguori


Reply via email to