diff options
author | Andre Przywara <andre.przywara@arm.com> | 2016-03-07 17:32:29 +0700 |
---|---|---|
committer | Christoffer Dall <christoffer.dall@linaro.org> | 2016-05-20 15:39:43 +0200 |
commit | 2defaff48aaf16072a6eac4cf8234917197dfa72 (patch) | |
tree | 45979a2277254da13f71c0cf509140327cb46817 /include/kvm | |
parent | d5a5a0eff368f039ed2222b47c15f09cb60e1245 (diff) | |
download | linux-2defaff48aaf16072a6eac4cf8234917197dfa72.tar.gz linux-2defaff48aaf16072a6eac4cf8234917197dfa72.tar.bz2 linux-2defaff48aaf16072a6eac4cf8234917197dfa72.zip |
KVM: arm/arm64: pmu: abstract access to number of SPIs
Currently the PMU uses a member of the struct vgic_dist directly,
which not only breaks abstraction, but will fail with the new VGIC.
Abstract this access in the VGIC header file and refactor the validity
check in the PMU code.
Signed-off-by: Andre Przywara <andre.przywara@arm.com>
Diffstat (limited to 'include/kvm')
-rw-r--r-- | include/kvm/arm_vgic.h | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/include/kvm/arm_vgic.h b/include/kvm/arm_vgic.h index 67a66371356d..ade70056cbd6 100644 --- a/include/kvm/arm_vgic.h +++ b/include/kvm/arm_vgic.h @@ -348,6 +348,8 @@ bool kvm_vgic_map_is_active(struct kvm_vcpu *vcpu, unsigned int virt_irq); #define irqchip_in_kernel(k) (!!((k)->arch.vgic.in_kernel)) #define vgic_initialized(k) (!!((k)->arch.vgic.nr_cpus)) #define vgic_ready(k) ((k)->arch.vgic.ready) +#define vgic_valid_spi(k, i) (((i) >= VGIC_NR_PRIVATE_IRQS) && \ + ((i) < (k)->arch.vgic.nr_irqs)) int vgic_v2_probe(const struct gic_kvm_info *gic_kvm_info, const struct vgic_ops **ops, |