Subject: Re: port-xen/29999: ctrl_if_interrupt IPL problem
To: Manuel Bouyer <bouyer@antioche.lip6.fr>
From: Christian Limpach <Christian.Limpach@cl.cam.ac.uk>
List: netbsd-bugs
Date: 04/19/2005 13:53:34
On Tue, Apr 19, 2005 at 02:45:02PM +0200, Manuel Bouyer wrote:
> On Tue, Apr 19, 2005 at 01:38:10PM +0100, Christian Limpach wrote:
> > > Will HYPERVISOR_block() return when there is an event pending, even if
> > > evtchn_upcall_mask is nonzero ?
> > 
> > yes, HYPERVISOR_block() will reenable events in a race-free manner, i.e.
> > you want to call HYPERVISOR_block() with events disabled and it will return
> > immediately if there are already pending events.
> 
> ha, but events will be reenabled (evtchn_upcall_mask will be reset to 0),
> right ? If so we can't really run in complete polling mode ...

yes.  I think it would work to keep the spl high and then check the
interrupt line for control messages.

    christian