Subject: Re: port-xen/29999: ctrl_if_interrupt IPL problem
To: Christian Limpach <Christian.Limpach@cl.cam.ac.uk>
From: Manuel Bouyer <bouyer@antioche.lip6.fr>
List: netbsd-bugs
Date: 04/19/2005 09:06:54
On Tue, Apr 19, 2005 at 02:51:22AM +0100, Christian Limpach wrote:
> >if there's a way to poll events (i couldn't find any),
> >i think it's better to use it because ddb needs to do busy-loop anyway.
>
> I think it should work to do HYPERVISOR_block calls in the loop.
> HYPERVISOR_block will return as soon as there are any (unmasked) events
> pending and then one could call the control message handler from the loop
Ha, I didn't know HYPERVISOR_block(). I'll experiment with that.
Thanks !
> -- you might have entered the debugger at a bad moment where the control
> message handling is in an inconsistent state, but there's not much you can
> do about that.
There is also the issue that we may receive control message for something
else than the console. As all but console use CALLBACK_IN_BLOCKING_CONTEXT
they will be queued up, but eventually the ring will overflow.
> At some point, we will move the console I/O into a seperate
> shared page, having it shared with the control messages is just too
> inconvenient.
Sure ! :)
--
Manuel Bouyer <bouyer@antioche.eu.org>
NetBSD: 26 ans d'experience feront toujours la difference
--