Keir Fraser wrote:
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
Thanks! That solved my issue. Just disabling interrupts before i call my
idle function did the trick.
Mathieu