All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH v2 0/7] ARM: KVM: Support for vgic-v3
@ 2016-08-16 10:46 ` Vladimir Murzin
  0 siblings, 0 replies; 74+ messages in thread
From: Vladimir Murzin @ 2016-08-16 10:46 UTC (permalink / raw)
  To: kvmarm, linux-arm-kernel; +Cc: marc.zyngier, andre.przywara

Hi,

This is an attempt to make use vgic-v3 under arch/arm since save-restore
functionality got re-written in C and can be shared between arm/arm64
like it has already been done for vgic-v2 and timer.

With this patches I'm able to get 32 core ARMv7 guest boot:

...
GICv3: CPU31: found redistributor 703 region 0:0x000000003ffd0000
CPU31: thread -1, cpu 3, socket 7, mpidr 80000703
Brought up 32 CPUs
SMP: Total of 32 processors activated (768.00 BogoMIPS).
CPU: All CPU(s) started in SVC mode.
...

Additionally, quite lightweight test based on Self IPI guest test[1]
has been run with up to 255 cpus.

[1] http://www.spinics.net/lists/kvm/msg128974.html

Changelog:

    v1 -> v2
       - rebased on v4.8-rc2
       - introduced guard for ITS code

Thanks!

Vladimir Murzin (7):
  arm64: KVM: Move GIC accessors to arch_gicv3.h
  arm64: KVM: Move vgic-v3 save/restore to virt/kvm/arm/hyp
  KVM: arm: vgic-new: improve compatibility with 32-bit
  ARM: update MPIDR accessors macro
  ARM: move system register accessors to asm/cp15.h
  ARM: KVM: Get ready to use vgic-v3
  ARM: KVM: Unlock vgic-v3 support

 arch/arm/include/asm/arch_gicv3.h                 |   91 +++++++++++++++++----
 arch/arm/include/asm/cp15.h                       |   15 ++++
 arch/arm/include/asm/cputype.h                    |    3 +-
 arch/arm/include/asm/kvm_asm.h                    |    3 +
 arch/arm/include/asm/kvm_host.h                   |    4 +
 arch/arm/include/asm/kvm_hyp.h                    |   20 ++---
 arch/arm/include/uapi/asm/kvm.h                   |    7 ++
 arch/arm/kvm/Makefile                             |    2 +
 arch/arm/kvm/coproc.c                             |   36 ++++++++
 arch/arm/kvm/hyp/Makefile                         |    1 +
 arch/arm/kvm/hyp/switch.c                         |   20 ++++-
 arch/arm64/include/asm/arch_gicv3.h               |   13 +++
 arch/arm64/kvm/Kconfig                            |    4 +-
 arch/arm64/kvm/hyp/Makefile                       |    2 +-
 include/kvm/arm_vgic.h                            |    8 --
 {arch/arm64/kvm => virt/kvm/arm}/hyp/vgic-v3-sr.c |   13 ---
 virt/kvm/arm/vgic/vgic-kvm-device.c               |   10 +--
 virt/kvm/arm/vgic/vgic-mmio-v3.c                  |    8 +-
 virt/kvm/arm/vgic/vgic-mmio.c                     |    2 -
 virt/kvm/arm/vgic/vgic-mmio.h                     |    5 +-
 virt/kvm/arm/vgic/vgic.h                          |   54 +-----------
 21 files changed, 195 insertions(+), 126 deletions(-)
 rename {arch/arm64/kvm => virt/kvm/arm}/hyp/vgic-v3-sr.c (96%)

-- 
1.7.9.5

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

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

Thread overview: 74+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2016-08-16 10:46 [PATCH v2 0/7] ARM: KVM: Support for vgic-v3 Vladimir Murzin
2016-08-16 10:46 ` Vladimir Murzin
2016-08-16 10:46 ` [PATCH v2 1/7] arm64: KVM: Move GIC accessors to arch_gicv3.h Vladimir Murzin
2016-08-16 10:46   ` Vladimir Murzin
2016-09-05 11:28   ` Christoffer Dall
2016-09-05 11:28     ` Christoffer Dall
2016-09-06 12:33     ` Vladimir Murzin
2016-09-06 12:33       ` Vladimir Murzin
2016-08-16 10:46 ` [PATCH v2 2/7] arm64: KVM: Move vgic-v3 save/restore to virt/kvm/arm/hyp Vladimir Murzin
2016-08-16 10:46   ` Vladimir Murzin
2016-08-16 10:46 ` [PATCH v2 3/7] KVM: arm: vgic-new: improve compatibility with 32-bit Vladimir Murzin
2016-08-16 10:46   ` Vladimir Murzin
2016-09-05 11:29   ` Christoffer Dall
2016-09-05 11:29     ` Christoffer Dall
2016-09-06 12:41     ` Vladimir Murzin
2016-09-06 12:41       ` Vladimir Murzin
2016-09-06 13:22       ` Christoffer Dall
2016-09-06 13:22         ` Christoffer Dall
2016-09-06 13:54         ` Vladimir Murzin
2016-09-06 13:54           ` Vladimir Murzin
2016-09-06 16:31           ` Christoffer Dall
2016-09-06 16:31             ` Christoffer Dall
2016-09-07  9:06             ` Vladimir Murzin
2016-09-07  9:06               ` Vladimir Murzin
2016-09-07  9:43               ` Christoffer Dall
2016-09-07  9:43                 ` Christoffer Dall
2016-08-16 10:46 ` [PATCH v2 4/7] ARM: update MPIDR accessors macro Vladimir Murzin
2016-08-16 10:46   ` Vladimir Murzin
2016-09-05 11:29   ` Christoffer Dall
2016-09-05 11:29     ` Christoffer Dall
2016-09-06 12:42     ` Vladimir Murzin
2016-09-06 12:42       ` Vladimir Murzin
2016-08-16 10:46 ` [PATCH v2 5/7] ARM: move system register accessors to asm/cp15.h Vladimir Murzin
2016-08-16 10:46   ` Vladimir Murzin
2016-09-05 11:29   ` Christoffer Dall
2016-09-05 11:29     ` Christoffer Dall
2016-09-06 13:05     ` Vladimir Murzin
2016-09-06 13:05       ` Vladimir Murzin
2016-09-06 16:34       ` Christoffer Dall
2016-09-06 16:34         ` Christoffer Dall
2016-08-16 10:46 ` [PATCH v2 6/7] ARM: KVM: Get ready to use vgic-v3 Vladimir Murzin
2016-08-16 10:46   ` Vladimir Murzin
2016-09-05 11:29   ` Christoffer Dall
2016-09-05 11:29     ` Christoffer Dall
2016-09-06 13:12     ` Vladimir Murzin
2016-09-06 13:12       ` Vladimir Murzin
2016-09-06 16:49       ` Christoffer Dall
2016-09-06 16:49         ` Christoffer Dall
2016-08-16 10:46 ` [PATCH v2 7/7] ARM: KVM: Unlock vgic-v3 support Vladimir Murzin
2016-08-16 10:46   ` Vladimir Murzin
2016-09-05 11:29   ` Christoffer Dall
2016-09-05 11:29     ` Christoffer Dall
2016-09-06 13:08     ` Marc Zyngier
2016-09-06 13:08       ` Marc Zyngier
2016-09-06 13:18     ` Vladimir Murzin
2016-09-06 13:18       ` Vladimir Murzin
2016-09-06 16:52       ` Christoffer Dall
2016-09-06 16:52         ` Christoffer Dall
2016-09-06 13:23     ` Vladimir Murzin
2016-09-06 13:23       ` Vladimir Murzin
2016-09-06 16:55       ` Christoffer Dall
2016-09-06 16:55         ` Christoffer Dall
2016-09-07 10:48         ` Vladimir Murzin
2016-09-07 10:48           ` Vladimir Murzin
2016-09-07 12:58           ` Christoffer Dall
2016-09-07 12:58             ` Christoffer Dall
2016-09-07 14:20             ` Peter Maydell
2016-09-07 14:20               ` Peter Maydell
2016-09-07 14:47               ` Christoffer Dall
2016-09-07 14:47                 ` Christoffer Dall
2016-09-05 11:28 ` [PATCH v2 0/7] ARM: KVM: Support for vgic-v3 Christoffer Dall
2016-09-05 11:28   ` Christoffer Dall
2016-09-06 12:32   ` Vladimir Murzin
2016-09-06 12:32     ` Vladimir Murzin

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.