diff options
author | Marc Zyngier <marc.zyngier@arm.com> | 2014-06-23 17:37:18 +0100 |
---|---|---|
committer | Marc Zyngier <marc.zyngier@arm.com> | 2015-08-12 11:28:25 +0100 |
commit | 6c3d63c9a26ba56e2ca63a9f68d52f77ae551d91 (patch) | |
tree | 3a324cd188bc07c3978dfe64ed634beca9437d96 /arch/arm/kvm | |
parent | 7a67b4b7e04b30345584c1b76a80db628530bf21 (diff) |
KVM: arm/arm64: vgic: Allow dynamic mapping of physical/virtual interrupts
In order to be able to feed physical interrupts to a guest, we need
to be able to establish the virtual-physical mapping between the two
worlds.
The mappings are kept in a set of RCU lists, indexed by virtual interrupts.
Reviewed-by: Christoffer Dall <christoffer.dall@linaro.org>
Signed-off-by: Marc Zyngier <marc.zyngier@arm.com>
Diffstat (limited to 'arch/arm/kvm')
-rw-r--r-- | arch/arm/kvm/arm.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/arch/arm/kvm/arm.c b/arch/arm/kvm/arm.c index f1bf41890fca..ce404a5c3062 100644 --- a/arch/arm/kvm/arm.c +++ b/arch/arm/kvm/arm.c @@ -125,6 +125,7 @@ int kvm_arch_init_vm(struct kvm *kvm, unsigned long type) if (ret) goto out_free_stage2_pgd; + kvm_vgic_early_init(kvm); kvm_timer_init(kvm); /* Mark the initial VMID generation invalid */ @@ -249,6 +250,7 @@ out: void kvm_arch_vcpu_postcreate(struct kvm_vcpu *vcpu) { + kvm_vgic_vcpu_early_init(vcpu); } void kvm_arch_vcpu_free(struct kvm_vcpu *vcpu) |