On Thu, Nov 07, 2019 at 04:04:10PM +0000, Marc Zyngier wrote: > As I was cleaning up some of the GICv4 code to make way for GICv4.1 it > occured to me that we could drastically reduce the impact of the GICv4 > doorbells on systems that are not oversubscribed (each vcpu "owns" a > physical CPU). > > The technique borrows its logic from the way we disable WFE trapping > when a vcpu is the only process on the CPU run-queue. If this vcpu is > the target of VLPIs, it is then beneficial not to trap blocking WFIs > and to leave the vcpu waiting for interrupts in guest state. > > All we need to do here is to track whether VLPIs are associated to a > vcpu (which is easily done by using a counter that we update on MAPI, > DISCARD and MOVI). > > It has been *very lightly* tested on a D05, and behaved pretty well in > my limited test cases (I get almost no doorbell at all in the non > oversubscribed case, and the usual hailstorm as soon as there is > oversubscription). I'd welcome some testing on more current HW. > Reviewed-by: Christoffer Dall <christoffer.dall@xxxxxxx> _______________________________________________ kvmarm mailing list kvmarm@xxxxxxxxxxxxxxxxxxxxx https://lists.cs.columbia.edu/mailman/listinfo/kvmarm