On 8 Jun 2006, at 10:48, Mathieu Ropert wrote:

- events/clock issue: there seems to be a race condition leading to clock not ticking, hence putting system to sleep till a keyboard/network/disk interrupt is received.

The ticker doesn't tick when you block. Your idle loop needs to disable interrupts, set a one-shot timer, then block. See safe_halt() in our Linux source tree (arch/i386/kernel/time-xen.c) -- the function expects to be called with interrupts disabled and caller should also have already checked for any other threads being runnable.

 -- Keir

Reply via email to