KVM: arm/arm64: vgic: add init entry to VGIC KVM device
authorEric Auger <eric.auger@linaro.org>
Mon, 15 Dec 2014 17:43:33 +0000 (18:43 +0100)
committerChristoffer Dall <christoffer.dall@linaro.org>
Sun, 11 Jan 2015 13:12:15 +0000 (14:12 +0100)
commit065c0034823b513d3ca95760a2ad1765e3ef629c
tree59cfc086b96c7b1c933121738d83014e2d47a290
parent66b030e48af68fd4c22d343908bc057207a0a31e
KVM: arm/arm64: vgic: add init entry to VGIC KVM device

Since the advent of VGIC dynamic initialization, this latter is
initialized quite late on the first vcpu run or "on-demand", when
injecting an IRQ or when the guest sets its registers.

This initialization could be initiated explicitly much earlier
by the users-space, as soon as it has provided the requested
dimensioning parameters.

This patch adds a new entry to the VGIC KVM device that allows
the user to manually request the VGIC init:
- a new KVM_DEV_ARM_VGIC_GRP_CTRL group is introduced.
- Its first attribute is KVM_DEV_ARM_VGIC_CTRL_INIT

The rationale behind introducing a group is to be able to add other
controls later on, if needed.

Signed-off-by: Eric Auger <eric.auger@linaro.org>
Signed-off-by: Christoffer Dall <christoffer.dall@linaro.org>
Documentation/virtual/kvm/devices/arm-vgic.txt
arch/arm/include/uapi/asm/kvm.h
arch/arm64/include/uapi/asm/kvm.h
virt/kvm/arm/vgic.c