| From 1e254d0d86a0f2efd4190a89d5204b37c18c6381 Mon Sep 17 00:00:00 2001 |
| From: Juergen Gross <jgross@suse.com> |
| Date: Mon, 13 Sep 2021 15:57:43 +0200 |
| Subject: Revert "x86/kvm: fix vcpu-id indexed array sizes" |
| |
| From: Juergen Gross <jgross@suse.com> |
| |
| commit 1e254d0d86a0f2efd4190a89d5204b37c18c6381 upstream. |
| |
| This reverts commit 76b4f357d0e7d8f6f0013c733e6cba1773c266d3. |
| |
| The commit has the wrong reasoning, as KVM_MAX_VCPU_ID is not defining the |
| maximum allowed vcpu-id as its name suggests, but the number of vcpu-ids. |
| So revert this patch again. |
| |
| Suggested-by: Eduardo Habkost <ehabkost@redhat.com> |
| Signed-off-by: Juergen Gross <jgross@suse.com> |
| Signed-off-by: Paolo Bonzini <pbonzini@redhat.com> |
| Message-Id: <20210913135745.13944-2-jgross@suse.com> |
| Signed-off-by: Paolo Bonzini <pbonzini@redhat.com> |
| Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> |
| --- |
| arch/x86/kvm/ioapic.c | 2 +- |
| arch/x86/kvm/ioapic.h | 4 ++-- |
| 2 files changed, 3 insertions(+), 3 deletions(-) |
| |
| --- a/arch/x86/kvm/ioapic.c |
| +++ b/arch/x86/kvm/ioapic.c |
| @@ -96,7 +96,7 @@ static unsigned long ioapic_read_indirec |
| static void rtc_irq_eoi_tracking_reset(struct kvm_ioapic *ioapic) |
| { |
| ioapic->rtc_status.pending_eoi = 0; |
| - bitmap_zero(ioapic->rtc_status.dest_map.map, KVM_MAX_VCPU_ID + 1); |
| + bitmap_zero(ioapic->rtc_status.dest_map.map, KVM_MAX_VCPU_ID); |
| } |
| |
| static void kvm_rtc_eoi_tracking_restore_all(struct kvm_ioapic *ioapic); |
| --- a/arch/x86/kvm/ioapic.h |
| +++ b/arch/x86/kvm/ioapic.h |
| @@ -43,13 +43,13 @@ struct kvm_vcpu; |
| |
| struct dest_map { |
| /* vcpu bitmap where IRQ has been sent */ |
| - DECLARE_BITMAP(map, KVM_MAX_VCPU_ID + 1); |
| + DECLARE_BITMAP(map, KVM_MAX_VCPU_ID); |
| |
| /* |
| * Vector sent to a given vcpu, only valid when |
| * the vcpu's bit in map is set |
| */ |
| - u8 vectors[KVM_MAX_VCPU_ID + 1]; |
| + u8 vectors[KVM_MAX_VCPU_ID]; |
| }; |
| |
| |