[PATCHv4 0/2] kvm: direct msix injection
We can deliver certain interrupts, notably MSIX, from atomic context. Here's an untested patch to do this (compiled only). Changes from v2: Don't inject broadcast interrupts directly Changes from v1: Tried to address comments from v1, except unifying with kvm_set_irq: passing flags to it looks too ugly. Added a comment. Jan, you said you can test this? Michael S. Tsirkin (2): kvm: add kvm_set_irq_inatomic kvm: deliver msi interrupts from irq handler include/linux/kvm_host.h | 1 + virt/kvm/assigned-dev.c | 36 +++-- virt/kvm/irq_comm.c | 83 +--- 3 files changed, 98 insertions(+), 22 deletions(-) -- MST -- 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
Re: [PATCHv4 0/2] kvm: direct msix injection
On Wed, Oct 17, 2012 at 06:05:53PM +0200, Michael S. Tsirkin wrote: > We can deliver certain interrupts, notably MSIX, > from atomic context. > Here's an untested patch to do this (compiled only). > > Changes from v2: > Don't inject broadcast interrupts directly > Changes from v1: > Tried to address comments from v1, except unifying > with kvm_set_irq: passing flags to it looks too ugly. > Added a comment. > > Jan, you said you can test this? I have tested this with some networking workloads and this patchset seems to work fine. My setup isn't a good fit for benchmarking device assignment though. Alex, could you pls verifyu that this solves the latency issue that you sometimes observe? With this patchset device assignment latency should be as fast as vfio. > > Michael S. Tsirkin (2): > kvm: add kvm_set_irq_inatomic > kvm: deliver msi interrupts from irq handler > > include/linux/kvm_host.h | 1 + > virt/kvm/assigned-dev.c | 36 +++-- > virt/kvm/irq_comm.c | 83 > +--- > 3 files changed, 98 insertions(+), 22 deletions(-) > > -- > MST -- 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
Re: [PATCHv4 0/2] kvm: direct msix injection
On Wed, 2012-11-21 at 21:26 +0200, Michael S. Tsirkin wrote: > On Wed, Oct 17, 2012 at 06:05:53PM +0200, Michael S. Tsirkin wrote: > > We can deliver certain interrupts, notably MSIX, > > from atomic context. > > Here's an untested patch to do this (compiled only). > > > > Changes from v2: > > Don't inject broadcast interrupts directly > > Changes from v1: > > Tried to address comments from v1, except unifying > > with kvm_set_irq: passing flags to it looks too ugly. > > Added a comment. > > > > Jan, you said you can test this? > > I have tested this with some networking workloads > and this patchset seems to work fine. > My setup isn't a good fit for benchmarking device > assignment though. > Alex, could you pls verifyu that this solves the > latency issue that you sometimes observe? > With this patchset device assignment latency should be > as fast as vfio. Yep, that seems to cover the gap. My environment is too noisy to declare an absolute winner, but pci-assign and vfio-pci are now very, very similar under netperf TCP_RR with these patches. Thanks, Alex -- 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
Re: [PATCHv4 0/2] kvm: direct msix injection
On Tue, Nov 27, 2012 at 09:34:57PM -0700, Alex Williamson wrote: > On Wed, 2012-11-21 at 21:26 +0200, Michael S. Tsirkin wrote: > > On Wed, Oct 17, 2012 at 06:05:53PM +0200, Michael S. Tsirkin wrote: > > > We can deliver certain interrupts, notably MSIX, > > > from atomic context. > > > Here's an untested patch to do this (compiled only). > > > > > > Changes from v2: > > > Don't inject broadcast interrupts directly > > > Changes from v1: > > > Tried to address comments from v1, except unifying > > > with kvm_set_irq: passing flags to it looks too ugly. > > > Added a comment. > > > > > > Jan, you said you can test this? > > > > I have tested this with some networking workloads > > and this patchset seems to work fine. > > My setup isn't a good fit for benchmarking device > > assignment though. > > Alex, could you pls verifyu that this solves the > > latency issue that you sometimes observe? > > With this patchset device assignment latency should be > > as fast as vfio. > > Yep, that seems to cover the gap. My environment is too noisy to > declare an absolute winner, but pci-assign and vfio-pci are now very, > very similar under netperf TCP_RR with these patches. Thanks, > > Alex Thanks very much for the report. Gleb, Marcelo, ACK? Also please add Tested-by: Alex Williamson -- MST -- 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
Re: [PATCHv4 0/2] kvm: direct msix injection
On Wed, Oct 17, 2012 at 06:05:55PM +0200, Michael S. Tsirkin wrote: > We can deliver certain interrupts, notably MSIX, > from atomic context. > Here's an untested patch to do this (compiled only). > > Changes from v2: > Don't inject broadcast interrupts directly > Changes from v1: > Tried to address comments from v1, except unifying > with kvm_set_irq: passing flags to it looks too ugly. > Added a comment. > > Jan, you said you can test this? > > Applied to queue. Thanks. > Michael S. Tsirkin (2): > kvm: add kvm_set_irq_inatomic > kvm: deliver msi interrupts from irq handler > > include/linux/kvm_host.h | 1 + > virt/kvm/assigned-dev.c | 36 +++-- > virt/kvm/irq_comm.c | 83 > +--- > 3 files changed, 98 insertions(+), 22 deletions(-) > > -- > MST > -- > 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 -- Gleb. -- 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