It occurs to me that we're handling assigned device interrupts inefficiently: an interrupt is received on cpu A, injected, and wakes up (or forces out of guest mode) a vcpu on cpu B. This involved an IPI and bothers two cpus instead of one.

But we often known which vcpu will be woken up (DM_FIXED interupts) and which cpu it runs on (vcpu->cpu, preempt notifiers) so we can migrate the host interrupt to follow the vcpu it wakes. This should improve latency and cpu utilization.

I'm not sure how to do this generically (with irqfd), so vhost-net can benefit from it as well - migrate the vhost threads and the interrupts that feed them too.

--
Do not meddle in the internals of kernels, for they are subtle and quick to 
panic.

--
To unsubscribe from this list: send the line "unsubscribe kvm" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to