diff options
author | 2014-10-26 23:18:14 +0000 | |
---|---|---|
committer | 2015-01-20 18:25:27 +0100 | |
commit | 4ce7ebdfc69d1d5d166eec103ed2976eb45a6173 (patch) | |
tree | d0033372ccdd1c40ccbb8b622e8999794e0fadf7 /virt/kvm/arm/vgic.c | |
parent | arm/arm64: KVM: move kvm_register_device_ops() into vGIC probing (diff) | |
download | linux-4ce7ebdfc69d1d5d166eec103ed2976eb45a6173.tar.gz linux-4ce7ebdfc69d1d5d166eec103ed2976eb45a6173.tar.bz2 linux-4ce7ebdfc69d1d5d166eec103ed2976eb45a6173.zip |
arm/arm64: KVM: dont rely on a valid GICH base address
To check whether the vGIC was already initialized, we currently check
the GICH base address for not being NULL. Since with GICv3 we may
get along without this address, lets use the irqchip_in_kernel()
function to detect an already initialized vGIC.
Signed-off-by: Andre Przywara <andre.przywara@arm.com>
Acked-by: Christoffer Dall <christoffer.dall@linaro.org>
Acked-by: Marc Zyngier <marc.zyngier@arm.com>
Signed-off-by: Christoffer Dall <christoffer.dall@linaro.org>
Diffstat (limited to 'virt/kvm/arm/vgic.c')
-rw-r--r-- | virt/kvm/arm/vgic.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/virt/kvm/arm/vgic.c b/virt/kvm/arm/vgic.c index 69f6e7aa573e..1c3b75eb28f0 100644 --- a/virt/kvm/arm/vgic.c +++ b/virt/kvm/arm/vgic.c @@ -2094,7 +2094,7 @@ int kvm_vgic_create(struct kvm *kvm, u32 type) mutex_lock(&kvm->lock); - if (kvm->arch.vgic.vctrl_base) { + if (irqchip_in_kernel(kvm)) { ret = -EEXIST; goto out; } |