Hi all, On 11/19/10 23:38, Colin Percival wrote: > It seems that this bug is related somehow to the idle thread sleeping -- when > I comment out the call to idle_block from cpu_idle_hlt in i386/machdep.c the > stalling goes away.
Ok, it turns out that the problem was a bit more complicated than this. There were two bugs, actually: First, Xen's timecounter was being rounded from ns precision to 1/HZ precision for no apparent reason; and second, the periodic clock interrupt isn't being delivered. I've fixed the first of these, and that is enough to prevent the stalling; I need to learn more about Xen interrupts, event channels, etc. to track down why we're not getting a clock interrupt. (The timer set by set_timer_op before we call SCHEDOP_block is waking us up -- but the missing clock interrupt means that we aren't preempting userland code, which is a rather Bad Thing.) -- Colin Percival Security Officer, FreeBSD | freebsd.org | The power to serve Founder / author, Tarsnap | tarsnap.com | Online backups for the truly paranoid _______________________________________________ freebsd-xen@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-xen To unsubscribe, send any mail to "freebsd-xen-unsubscr...@freebsd.org"