qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] Re: [Bug 599958] Re: Timedrift problems with Win7: hpet


From: Jan Kiszka
Subject: Re: [Qemu-devel] Re: [Bug 599958] Re: Timedrift problems with Win7: hpet missing time drift fixups
Date: Mon, 05 Jul 2010 13:13:46 +0200
User-agent: Mozilla/5.0 (X11; U; Linux i686 (x86_64); de; rv:1.8.1.12) Gecko/20080226 SUSE/2.0.0.12-1.1 Thunderbird/2.0.0.12 Mnenhy/0.7.5.666

Avi Kivity wrote:
> On 07/05/2010 12:07 PM, Jan Kiszka wrote:
>>
>>> What about ack notifiers?  Ask the APIC to notify you when an interrupt
>>> is acked.  That allows you to track the BSP, all cpus, or some subset.
>>> Masking can be seen at the irq controller level.
>>>      
>> So, if I understand you correctly, an IRQ state change that is ignored
>> due to masking would invoke the ack notifier chain as well?
>>    
> 
> No - the cpu doesn't ack, no ack notifier.
> 
> We might need a separate mask notifier.  Just add pomodoro sauce.

Mask notifiers would be a must, otherwise you cannot tell apart if an
IRQ was not yet ack'ed or is actually masked. On the other hand... see
below.

> 
>>> It's more involved, but provides more information.
>>>      
>> Well, it requires to establish ack notifier chains in parallel to the
>> existing IRQ delivery routes. Definitely more invasive.
>>    
> 
> Right, and need to plumb it twice, once for qemu and once for kvm.
> 
> But my feeling is you get a lot more information out of it.

That decoupling between state change and acknowledgment worries me.
Dispatching a source to multiple sinks or sharing a sink between
multiple source is no longer cleanly manageable this way. Just look at
the route of some ISA IRQ on x86: You may get an 'ack' from IOAPIC side
and a 'masked' from the ISA side (or vice versa). And the 'masked' will
arrive earlier. Not really straightforward to handle, is it?

Moreover, it requires a concrete algorithm that takes advantage from the
'ack' information bit (that should be the only additional information
you gain) to justify the additional effort. A "might have some
advantages" is not enough IMO. Do we have such an algorithm already?

Jan

-- 
Siemens AG, Corporate Technology, CT T DE IT 1
Corporate Competence Center Embedded Linux



reply via email to

[Prev in Thread] Current Thread [Next in Thread]