Subject: Re: port-xen/29999: ctrl_if_interrupt IPL problem
To: None <bouyer@antioche.eu.org>
From: Christian Limpach <Christian.Limpach@cl.cam.ac.uk>
List: netbsd-bugs
Date: 04/19/2005 02:51:22
>> IPL_CTRL needs to be very high because the console I/O is done though
>> control messages on guest domains, and there's no way to poll for 
>> keyboard
>> input. So, to get ddb working in guest domains, we need to have control
>> events enabled while in ddb.
>
> "keyboard input" meant "console input"?
>
>> I guess we could also be busy-looping waiting for the event, but it
>> would not be nice to other guests domains.
>
> 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 --  
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.  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.

    christian