From mboxrd@z Thu Jan 1 00:00:00 1970 From: Mathieu Ropert Subject: Re: [Xen-devel] Announcing OpenBSD/amd64 Xen port Date: Fri, 09 Jun 2006 11:54:20 +0200 Message-ID: <4489454C.1050909@adviseo.fr> References: <4487F26A.10506@adviseo.fr> Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Return-path: In-Reply-To: Sender: owner-misc@openbsd.org To: Keir Fraser Cc: misc@openbsd.org, xen-devel@lists.xensource.com, xen-users@lists.xensource.com List-Id: xen-devel@lists.xenproject.org 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