All of lore.kernel.org
 help / color / mirror / Atom feed
* [RFC PATCH v3 0/5] arm/arm64: vgic-new: Implement API for vGICv3 live migration
@ 2016-08-24 11:20 ` vijay.kilari at gmail.com
  0 siblings, 0 replies; 48+ messages in thread
From: vijay.kilari @ 2016-08-24 11:20 UTC (permalink / raw)
  To: marc.zyngier, christoffer.dall, peter.maydell
  Cc: kvmarm, linux-arm-kernel, Vijaya Kumar K

From: Vijaya Kumar K <Vijaya.Kumar@cavium.com>

This patchset adds API for saving and restoring
of VGICv3 registers to support live migration with new vgic feature.
This API definition is as per version of VGICv3 specification
http://lists.infradead.org/pipermail/linux-arm-kernel/2016-July/445611.html

To test live migration with QEMU, use below patch series
https://lists.gnu.org/archive/html/qemu-devel/2016-08/msg01444.html

The patch 3 & 4 are picked from the Pavel's previous implementation.
http://www.spinics.net/lists/kvm/msg122040.html

v2 => v3:
 - Implemented separate API for ISPENDR and ICPENDR to
   read soft_pending instead of pending for level triggerred interrupts
 - Implemented ioctl KVM_DEV_ARM_VGIC_GRP_LEVEL_INFO to access line level
 - Rebased on top of Christoffer's patch set
   http://www.spinics.net/lists/kvm/msg136840.html

 NOTE: GICD_STATUSR and GICR_STATUSR are implemented as RAZ/WI.

v1 => v2:
 - The init sequence change patch is no more required.
   Fixed in patch 2 by using static vgic_io_dev regions structure instead
   of using dynamic allocation pointer.
 - Updated commit message of patch 4.
 - Dropped usage of union to manage 32-bit and 64-bit access in patch 1.
   Used local variable for 32-bit access.
 - Updated macro __ARM64_SYS_REG and ARM64_SYS_REG in
   arch/arm64/include/uapi/asm/kvm.h as per qemu requirements.

Vijaya Kumar K (5):
  arm/arm64: vgic-new: Implement support for userspace access
  arm/arm64: vgic-new: Add distributor and redistributor access
  arm/arm64: vgic-new: Introduce find_reg_by_id()
  arm/arm64: vgic-new: Implement VGICv3 CPU interface access
  arm/arm64: vgic-new: Implement KVM_DEV_ARM_VGIC_GRP_LEVEL_INFO ioctl

 arch/arm64/include/uapi/asm/kvm.h   |  24 +++-
 arch/arm64/kvm/Makefile             |   1 +
 arch/arm64/kvm/sys_regs.c           |  22 ++--
 arch/arm64/kvm/sys_regs.h           |   4 +
 include/linux/irqchip/arm-gic-v3.h  |   4 +
 virt/kvm/arm/vgic/vgic-kvm-device.c | 198 ++++++++++++++++++++++++++++++++-
 virt/kvm/arm/vgic/vgic-mmio-v2.c    |   9 +-
 virt/kvm/arm/vgic/vgic-mmio-v3.c    | 178 ++++++++++++++++++++++++++++--
 virt/kvm/arm/vgic/vgic-mmio.c       | 123 +++++++++++++++++++--
 virt/kvm/arm/vgic/vgic-mmio.h       |  31 ++++++
 virt/kvm/arm/vgic/vgic-sys-reg-v3.c | 211 ++++++++++++++++++++++++++++++++++++
 virt/kvm/arm/vgic/vgic.h            |  17 +++
 12 files changed, 789 insertions(+), 33 deletions(-)
 create mode 100644 virt/kvm/arm/vgic/vgic-sys-reg-v3.c

-- 
1.9.1

^ permalink raw reply	[flat|nested] 48+ messages in thread

end of thread, other threads:[~2016-09-07 14:15 UTC | newest]

Thread overview: 48+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2016-08-24 11:20 [RFC PATCH v3 0/5] arm/arm64: vgic-new: Implement API for vGICv3 live migration vijay.kilari
2016-08-24 11:20 ` vijay.kilari at gmail.com
2016-08-24 11:20 ` [RFC PATCH v3 1/5] arm/arm64: vgic-new: Implement support for userspace access vijay.kilari
2016-08-24 11:20   ` vijay.kilari at gmail.com
2016-08-30 10:31   ` Christoffer Dall
2016-08-30 10:31     ` Christoffer Dall
2016-08-30 10:49     ` Christoffer Dall
2016-08-30 10:49       ` Christoffer Dall
2016-08-30 10:50   ` Christoffer Dall
2016-08-30 10:50     ` Christoffer Dall
2016-08-24 11:20 ` [RFC PATCH v3 2/5] arm/arm64: vgic-new: Add distributor and redistributor access vijay.kilari
2016-08-24 11:20   ` vijay.kilari at gmail.com
2016-08-30 12:31   ` Christoffer Dall
2016-08-30 12:31     ` Christoffer Dall
2016-09-06 13:47     ` Vijay Kilari
2016-09-06 14:14       ` Vijay Kilari
2016-09-06 14:14         ` Vijay Kilari
2016-09-06 17:09         ` Christoffer Dall
2016-09-06 17:09           ` Christoffer Dall
2016-08-24 11:20 ` [RFC PATCH v3 3/5] arm/arm64: vgic-new: Introduce find_reg_by_id() vijay.kilari
2016-08-24 11:20   ` vijay.kilari at gmail.com
2016-08-30 12:41   ` Christoffer Dall
2016-08-30 12:41     ` Christoffer Dall
2016-08-24 11:20 ` [RFC PATCH v3 4/5] arm/arm64: vgic-new: Implement VGICv3 CPU interface access vijay.kilari
2016-08-24 11:20   ` vijay.kilari at gmail.com
2016-08-30 13:45   ` Christoffer Dall
2016-08-30 13:45     ` Christoffer Dall
2016-09-06 13:48     ` Vijay Kilari
2016-09-06 14:13       ` Vijay Kilari
2016-09-06 14:13         ` Vijay Kilari
2016-09-06 19:19         ` Christoffer Dall
2016-09-06 19:19           ` Christoffer Dall
2016-09-07 13:49           ` Vijay Kilari
2016-09-07 13:49             ` Vijay Kilari
2016-09-07 14:15             ` Christoffer Dall
2016-09-07 14:15               ` Christoffer Dall
2016-09-06 17:10   ` Christoffer Dall
2016-09-06 17:10     ` Christoffer Dall
2016-08-24 11:20 ` [RFC PATCH v3 5/5] arm/arm64: vgic-new: Implement KVM_DEV_ARM_VGIC_GRP_LEVEL_INFO ioctl vijay.kilari
2016-08-24 11:20   ` vijay.kilari at gmail.com
2016-08-30 14:00   ` Christoffer Dall
2016-08-30 14:00     ` Christoffer Dall
2016-08-30 14:07     ` Christoffer Dall
2016-08-30 14:07       ` Christoffer Dall
2016-09-06 14:12     ` Vijay Kilari
2016-09-06 14:12       ` Vijay Kilari
2016-09-06 19:20       ` Christoffer Dall
2016-09-06 19:20         ` Christoffer Dall

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.