* Avi Kivity <avi@xxxxxxxxxx> wrote:
Ingo Molnar wrote:
Yeah, I gave this as an example. It's very different -- io-apic vs. local apic, paravirtualization vs. patching the guest behind its back, Linux vs. Windows.We do something similar for Windows (by patching it) very successfully; Windows likes to touch the APIC TPR ~ 100,000 times per second, usually without triggering an interrupt. We hijack these writes, do the checks in guest context, and only exit if the TPR write would trigger an interrupt.I suspect you aware of that this is about the io-apic not the local APIC. The local apic methods are already driver-ized - and they sit closer to the CPU so they matter more to performance.
Of course if we hook the io-apic EOI we'll want to hook the local apic EOI as well.
Yeah. Eventually anything that matters to performance will be accelerated by hardware (and properly virtualized), which in turn will be faster than any hypercall based approach, right?