[PATCH v2 00/11] Fixes to v7 of the vITS save/restore series

Christoffer Dall cdall at linaro.org
Tue May 9 01:56:07 PDT 2017


We spotted a number of isses on the v7 ITS save/restore patch series,
but because most of that patch series is in really good shape, and
because the work discussed is somewhat orthogonal (the register iodevs
in particular), I decided to send out a set of fixes to apply after the
main ITS save/restore series, and we can apply the v7 series plus these
fixes.

The whole series with the fixes applied on top of queue can be found here:
git://git.kernel.org/pub/scm/linux/kernel/git/cdall/linux.git its-save-restore-queue-fixes-v2

Thanks,
-Christoffer

Changes since v1:
 - We got rid of the requirement to initialize the ITS (it doesn't do
   anything).
 - We fixed a race condition with setting the ITS base address which was
   introduced in v1 of this series.
 - We reworded some commit messages based on Eric's comments
 - We fixed the address check to work with partically unset base addrs
 - We use the vcpu index instead of the vcpu id for allocating redist
   regions.
 - Some renames and code cleanups.

Christoffer Dall (10):
  KVM: arm/arm64: Clarification and relaxation to ITS save/restore ABI
  KVM: arm/arm64: vgic: Rename kvm_vgic_vcpu_init to
    kvm_vgic_vcpu_enable
  KVM: Add kvm_vcpu_get_idx to get vcpu index in kvm->vcpus
  KVM: arm/arm64: Refactor vgic_register_redist_iodevs
  KVM: arm/arm64: Make vgic_v3_check_base more broadly usable
  KVM: arm/arm64: Slightly rework kvm_vgic_addr
  KVM: arm/arm64: Register iodevs when setting redist base and creating
    VCPUs
  KVM: arm/arm64: Register ITS iodev when setting base address
  KVM: arm/arm64: Don't call map_resources when restoring ITS tables
  KVM: arm/arm64: vgic-its: Cleanup after failed ITT restore

Marc Zyngier (1):
  KVM: arm/arm64: Get rid of its->initialized field

 Documentation/virtual/kvm/devices/arm-vgic-its.txt |  23 ++--
 include/kvm/arm_vgic.h                             |   2 +-
 include/linux/kvm_host.h                           |  11 ++
 virt/kvm/arm/arm.c                                 |   2 +-
 virt/kvm/arm/vgic/vgic-init.c                      |  25 +++-
 virt/kvm/arm/vgic/vgic-its.c                       |  96 +++++---------
 virt/kvm/arm/vgic/vgic-kvm-device.c                |  29 ++--
 virt/kvm/arm/vgic/vgic-mmio-v3.c                   | 147 +++++++++++++++------
 virt/kvm/arm/vgic/vgic-v3.c                        |  33 +++--
 virt/kvm/arm/vgic/vgic.h                           |   5 +-
 10 files changed, 222 insertions(+), 151 deletions(-)

-- 
2.9.0




More information about the linux-arm-kernel mailing list