> > shared interrupts aren't a big deal in Linux. at all.
> > In fact, sharing all PV interrupts to one number is a performance
> > enhancement ;)
> >   
> 
> If you share a PV interrupt with a non-PV interrupt, then for each PV 
> interrupt you have to check whether the non-PV interrupt fired.  That 
> involves at least one expensive vmexit.

hmm not really.
the completion ring lives in guest memory, the guest can check it
without vmexit entirely.
The PV block driver only does 2 vm events normally (apart from boot time
setup), one to inform the host new IO has been submitted in the submit
ring, and one to receive an interrupt to get notified one or more
completions are present in the completion ring. Nothing more....

> 
> I agree that sharing PV interrupts is not very expensive (though I don't 
> see why you call it an optimization - if you share 100 interrupts on one 
> line you need to check 100 interrupt sources every time the interrupt 
> fires).

as long as the check is cheap that is actually fine; if in your 100
sources scenario 10 have fired, you only get 1 vm event to deliver the
irq, and then 100 polls of guest memory inside the guest. That should be
cheaper than doing 10 real vm interrupts.


-- 
if you want to mail me at work (you don't), use arjan (at) linux.intel.com
Test the interaction between Linux and your BIOS via 
http://www.linuxfirmwarekit.org


-------------------------------------------------------------------------
Take Surveys. Earn Cash. Influence the Future of IT
Join SourceForge.net's Techsay panel and you'll get the chance to share your
opinions on IT & business topics through brief surveys-and earn cash
http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV
_______________________________________________
kvm-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/kvm-devel

Reply via email to