Avi Kivity wrote: > Dong, Eddie wrote: >> Add back pending irqs for apic timer to get precise guest >> APIC timer interrupt. >> > > Can you explain the problem and the solution in more detail?
Today guest sleep 10 seconds only get about 5-6 seconds in host time. A design philosiphy in various VMM is that guest wall clock should catch up host wall clock. The reason (partly) is that A VM may be descheduled, while the host time is still going. For periodic timer like APIC timer, guest expect to see certain amount of interrupt that stands for the time passed (host time). In previous APIC timer virtualization policy, we inject an IRQ to APIC when a period of host time is passed, but the guest may not take it if it is descheduled. In that way the previous irq in APIC will be overwritten by next injection from fire of host hrtimer. In that way guest get less amount of APIC timer IRQ. This patch keep track of the pending irqs and inject them back to guest eventually even the guest may be descheduled. This is also what we did in Xen. BTW, This policy will also be applied to future kernel PIT, I just do it step by step. Thx,eddie ------------------------------------------------------------------------- This SF.net email is sponsored by: Splunk Inc. Still grepping through log files to find problems? Stop. Now Search log events and configuration files using AJAX and a browser. Download your FREE copy of Splunk now >> http://get.splunk.com/ _______________________________________________ kvm-devel mailing list kvm-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/kvm-devel