Messages in this thread Patch in this message | | | From | Chris J Arges <> | Subject | [PATCH] KVM: ioapic: add check for RTC_GSI | Date | Wed, 10 Sep 2014 11:53:31 -0500 |
| |
cppcheck found the following error: [ioapic.c:114]: (error) Array index -1 is out of bounds.
If CONFIG_X86 is not defined, RTC_GSI == -1U which means that an out of bounds error could occur when accessing &ioapic->redirtbl[RTC_GSI].
This patch adds a check to kvm_rtc_eoi_tracking_restore_one that is similar to how kvm_rtc_eoi_tracking_restore_all checks this condition.
Signed-off-by: Chris J Arges <chris.j.arges@canonical.com> --- virt/kvm/ioapic.c | 3 +++ 1 file changed, 3 insertions(+)
diff --git a/virt/kvm/ioapic.c b/virt/kvm/ioapic.c index e8ce34c..859f5b8 100644 --- a/virt/kvm/ioapic.c +++ b/virt/kvm/ioapic.c @@ -136,6 +136,9 @@ void kvm_rtc_eoi_tracking_restore_one(struct kvm_vcpu *vcpu) { struct kvm_ioapic *ioapic = vcpu->kvm->arch.vioapic; + if (RTC_GSI >= IOAPIC_NUM_PINS) + return; + spin_lock(&ioapic->lock); __rtc_irq_eoi_tracking_restore_one(vcpu); spin_unlock(&ioapic->lock); -- 1.9.1
| |