On Tue, Nov 19, 2019 at 09:15:52AM +0100, Cédric Le Goater wrote: > On 19/11/2019 01:47, David Gibson wrote: > > On Mon, Nov 18, 2019 at 04:37:16PM +0100, Cédric Le Goater wrote: > >> On 18/11/2019 16:12, Greg Kurz wrote: > >>> When using the XIVE KVM device, the trigger page is directly accessible > >>> in QEMU. Unlike with XICS, no need to ask KVM to fire the interrupt. A > >>> simple store on the trigger page does the job. > >>> > >>> Just call xive_esb_trigger(). > >> > >> Yes but the KVM XIVE device does a few other checks. > >> > >> It checks that the interrupt was correctly initialized at the KVM device > >> level. We should be fine in QEMU which has similar checks. > >> > >> It caches the LSI assertion level. We should be fine also because it is > >> useless in KVM when using the XIVE native exploitation mode. > >> > >> It checks it is not a passthru interrupt. Any idea on how to check this > >> condition under QEMU ? > >> > >>> This may improve performance of emulated devices that go through > >>> qemu_set_irq(), eg. virtio devices created with ioeventfd=off or > >>> configured by the guest to use LSI interrupts, which aren't really > >>> recommended setups. > >> > >> LGTM. > > > > Ok, between the comments above and this, I'm not sure if this is ready > > to merge or not. > > I think it is. > > With this change, we are loosing a check on passthrough interrupts but > I am not sure how critical this is given that QEMU can anyhow bypass > KVM and trigger the interrupt using a store on the ESB page. > > >> Any figures to share ? > > I am torturing Greg to have numbers :) but he resisted well. > > >> C. > >> > >>> Signed-off-by: Greg Kurz <gr...@kaod.org> > > Let's move on. > > Reviewed-by: Cédric Le Goater <c...@kaod.org>
Works for me. Applied. -- David Gibson | I'll have my music baroque, and my code david AT gibson.dropbear.id.au | minimalist, thank you. NOT _the_ _other_ | _way_ _around_! http://www.ozlabs.org/~dgibson
signature.asc
Description: PGP signature