[GIT PULL] Second batch of KVM changes for 4.7

classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

[GIT PULL] Second batch of KVM changes for 4.7

Radim Krčmář
Linus,

The following changes since commit 9842df62004f366b9fed2423e24df10542ee0dc5:

  KVM: MTRR: remove MSR 0x2f8 (2016-05-18 18:04:32 +0200)

are available in the git repository at:

  git://git.kernel.org/pub/scm/virt/kvm/kvm.git tags/for-linus

for you to fetch changes up to fabc712866435660f7fa1070e1fabe29eba5bc4c:

  tools: kvm_stat: Add comments (2016-05-25 16:12:06 +0200)

----------------------------------------------------------------
- move kvm_stat tool from QEMU repo into tools/kvm/kvm_stat
  (kvm_stat had nothing to do with QEMU in the first place -- the tool
   only interprets debugfs)
- expose per-vm statistics in debugfs and support them in kvm_stat
  (KVM always collected per-vm statistics, but they were summarised into
   global statistics)

x86:
 - fix dynamic APICv (VMX was improperly configured and a guest could
   access host's APIC MSRs, CVE-2016-4440)
 - minor fixes

ARM changes from Christoffer Dall:
 "This set of changes include the new vgic, which is a reimplementation
  of our horribly broken legacy vgic implementation.  The two
  implementations will live side-by-side (with the new being the
  configured default) for one kernel release and then we'll remove the
  legacy one.

  Also fixes a non-critical issue with virtual abort injection to
  guests."

----------------------------------------------------------------
Andre Przywara (29):
      KVM: arm/arm64: vgic: streamline vgic_update_irq_pending() interface
      KVM: arm/arm64: vgic: avoid map in kvm_vgic_inject_mapped_irq()
      KVM: arm/arm64: vgic: avoid map in kvm_vgic_map_is_active()
      KVM: arm/arm64: vgic: avoid map in kvm_vgic_unmap_phys_irq()
      KVM: arm/arm64: arch_timer: Remove irq_phys_map
      KVM: arm/arm64: vgic: Remove irq_phys_map from interface
      KVM: arm/arm64: pmu: abstract access to number of SPIs
      KVM: arm/arm64: move GICv2 emulation defines into arm-gic-v3.h
      KVM: arm/arm64: vgic-new: Add GICv2 MMIO handling framework
      KVM: arm/arm64: vgic-new: Add ENABLE registers handlers
      KVM: arm/arm64: vgic-new: Add PENDING registers handlers
      KVM: arm/arm64: vgic-new: Add ACTIVE registers handlers
      KVM: arm/arm64: vgic-new: Add PRIORITY registers handlers
      KVM: arm/arm64: vgic-new: Add CONFIG registers handlers
      KVM: arm/arm64: vgic-new: Add TARGET registers handlers
      KVM: arm/arm64: vgic-new: Add SGIR register handler
      KVM: arm/arm64: vgic-new: Add SGIPENDR register handlers
      KVM: arm/arm64: vgic-new: Add GICv3 MMIO handling framework
      KVM: arm/arm64: vgic-new: Add GICv3 CTLR, IIDR, TYPER handlers
      KVM: arm/arm64: vgic-new: Add GICv3 redistributor IIDR and TYPER handler
      KVM: arm/arm64: vgic-new: Add GICv3 IDREGS register handler
      KVM: arm/arm64: vgic-new: Add GICv3 IROUTER register handlers
      KVM: arm/arm64: vgic-new: Add GICv3 SGI system register trap handler
      KVM: arm/arm64: vgic-new: Add userland access to VGIC dist registers
      KVM: arm/arm64: vgic-new: Add GICH_VMCR accessors
      KVM: arm/arm64: vgic-new: Add userland GIC CPU interface access
      KVM: arm/arm64: vgic-new: Wire up irqfd injection
      KVM: arm/arm64: vgic-new: implement mapped IRQ handling
      KVM: arm/arm64: vgic-new: enable build

Christoffer Dall (12):
      KVM: arm/arm64: Remove the IRQ field from struct irq_phys_map
      KVM: arm/arm64: Move timer IRQ map to latest possible time
      KVM: arm/arm64: Get rid of vgic_cpu->nr_lr
      KVM: arm/arm64: Fix MMIO emulation data handling
      KVM: arm/arm64: Export mmio_read/write_bus
      KVM: arm/arm64: Provide functionality to pause and resume a guest
      KVM: arm/arm64: vgic-new: Add data structure definitions
      KVM: arm/arm64: vgic-new: Add acccessor to new struct vgic_irq instance
      KVM: arm/arm64: vgic-new: Implement virtual IRQ injection
      KVM: arm/arm64: vgic-new: Add IRQ sorting
      KVM: arm/arm64: vgic-new: Export register access interface
      KVM: arm/arm64: vgic-new: Synchronize changes to active state

Dan Carpenter (1):
      svm: bitwise vs logical op typo

Eric Auger (12):
      KVM: arm/arm64: vgic-new: Implement kvm_vgic_vcpu_pending_irq
      KVM: arm/arm64: vgic-new: vgic_kvm_device: KVM device ops registration
      KVM: arm/arm64: vgic-new: vgic_kvm_device: KVM_DEV_ARM_VGIC_GRP_NR_IRQS
      KVM: arm/arm64: vgic-new: vgic_kvm_device: KVM_DEV_ARM_VGIC_GRP_CTRL
      KVM: arm/arm64: vgic-new: vgic_kvm_device: implement kvm_vgic_addr
      KVM: arm/arm64: vgic-new: vgic_kvm_device: KVM_DEV_ARM_VGIC_GRP_ADDR
      KVM: arm/arm64: vgic-new: vgic_kvm_device: access to VGIC registers
      KVM: arm/arm64: vgic-new: vgic_init: implement kvm_vgic_hyp_init
      KVM: arm/arm64: vgic-new: vgic_init: implement vgic_create
      KVM: arm/arm64: vgic-new: vgic_init: implement vgic_init
      KVM: arm/arm64: vgic-new: vgic_init: implement map_resources
      KVM: arm/arm64: vgic-new: Add vgic_v2/v3_enable

Hemant Kumar (1):
      tools: kvm_stat: Powerpc related fixes

Jan Kiszka (2):
      KVM: Unify traced vector format
      KVM: SVM: Add more SVM_EXIT_REASONS

Janosch Frank (5):
      tools: Add kvm_stat vm monitor script
      MAINTAINERS: Add kvm tools
      KVM: Create debugfs dir and stat files for each VM
      tools: kvm_stat: Introduce pid monitoring
      tools: kvm_stat: Add comments

Marc Zyngier (5):
      KVM: arm/arm64: vgic-new: Add IRQ sync/flush framework
      KVM: arm/arm64: vgic-new: Add GICv2 world switch backend
      KVM: arm/arm64: vgic-new: Add GICv3 world switch backend
      KVM: arm/arm64: vgic-new: Add MMIO handling framework
      KVM: arm/arm64: vgic-new: Add CTLR, TYPER and IIDR handlers

Matt Evans (1):
      kvm: arm64: Fix EC field in inject_abt64

Paolo Bonzini (2):
      Merge tag 'kvm-arm-for-4-7-take2' of git://git.kernel.org/.../kvmarm/kvmarm into kvm-next
      tools: Add kvm_stat man page

Roman Kagan (1):
      kvm:vmx: more complete state update on APICv on/off

 MAINTAINERS                         |    1 +
 arch/arm/include/asm/kvm_host.h     |    6 +
 arch/arm/include/asm/kvm_mmio.h     |    3 +
 arch/arm/kvm/Kconfig                |    7 +
 arch/arm/kvm/Makefile               |   11 +
 arch/arm/kvm/arm.c                  |   37 +-
 arch/arm/kvm/mmio.c                 |   24 +-
 arch/arm64/include/asm/kvm_host.h   |    6 +
 arch/arm64/include/asm/kvm_mmio.h   |    3 +
 arch/arm64/kvm/Kconfig              |    7 +
 arch/arm64/kvm/Makefile             |   12 +
 arch/arm64/kvm/inject_fault.c       |    2 +-
 arch/x86/include/uapi/asm/svm.h     |   44 +-
 arch/x86/kvm/svm.c                  |    4 +-
 arch/x86/kvm/vmx.c                  |   46 +-
 include/kvm/arm_arch_timer.h        |   11 +-
 include/kvm/arm_vgic.h              |   20 +-
 include/kvm/vgic/vgic.h             |  246 ++++++++
 include/linux/irqchip/arm-gic-v3.h  |    6 +
 include/linux/irqchip/arm-gic.h     |    2 +
 include/linux/kvm_host.h            |    7 +
 include/trace/events/kvm.h          |    6 +-
 tools/Makefile                      |    6 +-
 tools/kvm/kvm_stat/Makefile         |   41 ++
 tools/kvm/kvm_stat/kvm_stat         | 1127 +++++++++++++++++++++++++++++++++++
 tools/kvm/kvm_stat/kvm_stat.txt     |   63 ++
 virt/kvm/arm/arch_timer.c           |   68 ++-
 virt/kvm/arm/hyp/timer-sr.c         |    5 +-
 virt/kvm/arm/hyp/vgic-v2-sr.c       |   17 +-
 virt/kvm/arm/pmu.c                  |   25 +-
 virt/kvm/arm/vgic-v2.c              |    4 +-
 virt/kvm/arm/vgic-v3.c              |    8 +-
 virt/kvm/arm/vgic.c                 |   86 +--
 virt/kvm/arm/vgic/vgic-init.c       |  452 ++++++++++++++
 virt/kvm/arm/vgic/vgic-irqfd.c      |   52 ++
 virt/kvm/arm/vgic/vgic-kvm-device.c |  431 ++++++++++++++
 virt/kvm/arm/vgic/vgic-mmio-v2.c    |  446 ++++++++++++++
 virt/kvm/arm/vgic/vgic-mmio-v3.c    |  455 ++++++++++++++
 virt/kvm/arm/vgic/vgic-mmio.c       |  526 ++++++++++++++++
 virt/kvm/arm/vgic/vgic-mmio.h       |  150 +++++
 virt/kvm/arm/vgic/vgic-v2.c         |  352 +++++++++++
 virt/kvm/arm/vgic/vgic-v3.c         |  330 ++++++++++
 virt/kvm/arm/vgic/vgic.c            |  619 +++++++++++++++++++
 virt/kvm/arm/vgic/vgic.h            |  131 ++++
 virt/kvm/kvm_main.c                 |  187 +++++-
 45 files changed, 5900 insertions(+), 192 deletions(-)
 create mode 100644 include/kvm/vgic/vgic.h
 create mode 100644 tools/kvm/kvm_stat/Makefile
 create mode 100755 tools/kvm/kvm_stat/kvm_stat
 create mode 100644 tools/kvm/kvm_stat/kvm_stat.txt
 create mode 100644 virt/kvm/arm/vgic/vgic-init.c
 create mode 100644 virt/kvm/arm/vgic/vgic-irqfd.c
 create mode 100644 virt/kvm/arm/vgic/vgic-kvm-device.c
 create mode 100644 virt/kvm/arm/vgic/vgic-mmio-v2.c
 create mode 100644 virt/kvm/arm/vgic/vgic-mmio-v3.c
 create mode 100644 virt/kvm/arm/vgic/vgic-mmio.c
 create mode 100644 virt/kvm/arm/vgic/vgic-mmio.h
 create mode 100644 virt/kvm/arm/vgic/vgic-v2.c
 create mode 100644 virt/kvm/arm/vgic/vgic-v3.c
 create mode 100644 virt/kvm/arm/vgic/vgic.c
 create mode 100644 virt/kvm/arm/vgic/vgic.h
Loading...