[PATCH kernel v4 00/10] powerpc/kvm/vfio: Enable in-kernel acceleration

Alexey Kardashevskiy
2017-02-07T07:17:01Z

This is my current queue of patches to add acceleration of TCE
updates in KVM.

This is based on 283725af0bd2 which was a Linus master tree
6 days ago.

Please comment. Thanks.

Changes:
v4:
* addressed comments from v3
* updated subject lines with correct component names
* regrouped the patchset in order:
- powerpc fixes;
- vfio_spapr_tce driver fixes;
- KVM/PPC fixes;
- KVM+PPC+VFIO;
* everything except last 2 patches have "Reviewed-By: David"

v3:
* there was no full repost, only last patch was posted

v2:
* 11/11 reworked to use new notifiers, it is rather RFC as it still has
a issue;
* got 09/11, 10/11 to use notifiers in 11/11;
* added rb: David to most of patches and added a comment in 05/11.

Alexey Kardashevskiy (10):
powerpc/mmu: Add real mode support for IOMMU preregistered memory
powerpc/powernv/iommu: Add real mode version of
iommu_table_ops::exchange()
powerpc/iommu/vfio_spapr_tce: Cleanup iommu_table disposal
powerpc/vfio_spapr_tce: Add reference counting to iommu_table
KVM: PPC: Reserve KVM_CAP_SPAPR_TCE_VFIO capability number
KVM: PPC: Enable IOMMU_API for KVM_BOOK3S_64 permanently
KVM: PPC: Pass kvm* to kvmppc_find_table()
KVM: PPC: Separate TCE validation from update
KVM: PPC: Use preregistered memory API to access TCE list
KVM: PPC: VFIO: Add in-kernel acceleration for VFIO

Documentation/virtual/kvm/devices/vfio.txt | 22 +-
arch/powerpc/include/asm/iommu.h | 12 +-
arch/powerpc/include/asm/kvm_host.h | 8 +
arch/powerpc/include/asm/kvm_ppc.h | 6 +-
arch/powerpc/include/asm/mmu_context.h | 4 +
include/uapi/linux/kvm.h | 9 +
arch/powerpc/kernel/iommu.c | 49 ++++-
arch/powerpc/kvm/book3s_64_vio.c | 334 ++++++++++++++++++++++++++++-
arch/powerpc/kvm/book3s_64_vio_hv.c | 249 ++++++++++++++++++---
arch/powerpc/kvm/powerpc.c | 2 +
arch/powerpc/mm/mmu_context_iommu.c | 39 ++++
arch/powerpc/platforms/powernv/pci-ioda.c | 42 +++-
arch/powerpc/platforms/powernv/pci.c | 1 +
arch/powerpc/platforms/pseries/iommu.c | 3 +-
arch/powerpc/platforms/pseries/vio.c | 2 +-
drivers/vfio/vfio_iommu_spapr_tce.c | 2 +-
virt/kvm/vfio.c | 60 ++++++
arch/powerpc/kvm/Kconfig | 1 +
18 files changed, 794 insertions(+), 51 deletions(-)

--
2.11.0