All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH v2 0/3] KVM: arm/arm64: Allow to use KVM without in-kernel irqchip
@ 2015-07-14 12:06 Pavel Fedin
  2015-07-14 12:06 ` [PATCH v2 1/3] KVM: arm: Fix NULL pointer dereference if KVM is used " Pavel Fedin
                   ` (3 more replies)
  0 siblings, 4 replies; 22+ messages in thread
From: Pavel Fedin @ 2015-07-14 12:06 UTC (permalink / raw)
  To: kvmarm, kvm; +Cc: Marc Zyngier, Christoffer Dall, Eric Auger

This patch set brings back functionality which was broken in v4.1. The
overall goal is to eventually enable using virtual timer too, but for now
changes affect only a possibility to run KVM itself. The guest currently
has to use another timer because there's no API to propagate interrupts
from in-kernel virtual timer to the interrupt controller emulated in
userspace.

v1=>v2:
- Do not use defensive approach in patch 0001. Use correct conditions in
  callers instead
- Added ARM64-specific code, without which attempt to run a VM ends in a
  HYP crash because of unset vGIC save/restore function pointers

Christoffer Dall: I decided to leave original approach of 0002 as it is,
because:
- It is much simpler to implement than doing changes inside both probe
  functions.
- These are all use cases for vgic_present flag. Nothing else is going to
  rely on it. IMHO this switch is very short and stylish :) If you don't
  like two error codes, we could change -ENXIO to -ENODEV where appropriate,
  this change would be small enough.
Actually i tried to discuss some things with you, but you stopped replying,
therefore i respin in order to revive the thing. On top of this i have
complete implementation of API which allows to emulate GIC in userspace by
qemu, and now i can run any virtual machine, including generic timer, on
vGIC-less machine. RasPI-2 is expected to benefit too.

Pavel Fedin (3):
  KVM: arm: Fix NULL pointer dereference if KVM is used without
    in-kernel irqchip
  KVM: arm: Detect vGIC presence at runtime
  KVM: arm64: Introduce default dummy save/restore functions

 arch/arm/include/asm/kvm_host.h   |  5 +++++
 arch/arm/kvm/arm.c                | 24 +++++++++++++++++++++---
 arch/arm64/include/asm/kvm_asm.h  |  1 +
 arch/arm64/include/asm/kvm_host.h |  8 ++++++++
 arch/arm64/kvm/vgic-v2-switch.S   |  5 +++++
 virt/kvm/arm/vgic.c               |  2 ++
 6 files changed, 42 insertions(+), 3 deletions(-)

-- 
2.4.4


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

end of thread, other threads:[~2015-07-27  9:02 UTC | newest]

Thread overview: 22+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2015-07-14 12:06 [PATCH v2 0/3] KVM: arm/arm64: Allow to use KVM without in-kernel irqchip Pavel Fedin
2015-07-14 12:06 ` [PATCH v2 1/3] KVM: arm: Fix NULL pointer dereference if KVM is used " Pavel Fedin
2015-07-17 16:47   ` Marc Zyngier
2015-07-19 14:19     ` Pavel Fedin
2015-07-14 12:06 ` [PATCH v2 2/3] KVM: arm: Detect vGIC presence at runtime Pavel Fedin
2015-07-17 17:14   ` Marc Zyngier
2015-07-14 12:06 ` [PATCH v2 3/3] KVM: arm64: Introduce default dummy save/restore functions Pavel Fedin
2015-07-14 12:28   ` Marc Zyngier
2015-07-14 13:02     ` Pavel Fedin
2015-07-16 13:30       ` Christoffer Dall
2015-07-14 14:15     ` Pavel Fedin
2015-07-17 16:59 ` [PATCH v2 0/3] KVM: arm/arm64: Allow to use KVM without in-kernel irqchip Marc Zyngier
2015-07-19 14:05   ` Pavel Fedin
2015-07-20  8:08     ` Marc Zyngier
2015-07-22  7:19       ` Pavel Fedin
2015-07-23 16:48         ` Marc Zyngier
2015-07-24 15:27           ` Pavel Fedin
2015-07-24 16:06             ` Marc Zyngier
2015-07-26 12:50               ` Pavel Fedin
2015-07-27  7:28                 ` Marc Zyngier
2015-07-27  8:36                   ` Pavel Fedin
2015-07-27  9:02                     ` Marc Zyngier

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.