Re: [PATCH v4.9 backport] KVM: arm/arm64: vgic-its: Preserve the revious read from the pending table

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Tue, Dec 12, 2017 at 5:42 PM, Christoffer Dall
<christoffer.dall@xxxxxxxxxx> wrote:
> From: Marc Zyngier <marc.zyngier@xxxxxxx>
>
> Commit 64afe6e9eb4841f35317da4393de21a047a883b3 upstream.

Please disregard this, I accidentally backported the arm64 patch
instead of the arm patch.

Another one (the correct one, hopefully) incoming.

>
> The current pending table parsing code assumes that we keep the
> previous read of the pending bits, but keep that variable in
> the current block, making sure it is discarded on each loop.
>
> We end-up using whatever is on the stack. Who knows, it might
> just be the right thing...
>
> Fixes: 33d3bc9556a7d ("KVM: arm64: vgic-its: Read initial LPI pending table")
> Cc: <stable@xxxxxxxxxxxxxxx> # 4.8
> Reported-by: AKASHI Takahiro <takahiro.akashi@xxxxxxxxxx>
> Reviewed-by: Christoffer Dall <christoffer.dall@xxxxxxxxxx>
> Signed-off-by: Marc Zyngier <marc.zyngier@xxxxxxx>
> Signed-off-by: Christoffer Dall <christoffer.dall@xxxxxxxxxx>
> ---
>  virt/kvm/arm/vgic/vgic-its.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/virt/kvm/arm/vgic/vgic-its.c b/virt/kvm/arm/vgic/vgic-its.c
> index 4660a7d04eea..bbd4a988e8c1 100644
> --- a/virt/kvm/arm/vgic/vgic-its.c
> +++ b/virt/kvm/arm/vgic/vgic-its.c
> @@ -322,6 +322,7 @@ static int its_sync_lpi_pending_table(struct kvm_vcpu *vcpu)
>         int ret = 0;
>         u32 *intids;
>         int nr_irqs, i;
> +       u8 pendmask;
>
>         nr_irqs = vgic_copy_lpi_list(vcpu->kvm, &intids);
>         if (nr_irqs < 0)
> @@ -329,7 +330,6 @@ static int its_sync_lpi_pending_table(struct kvm_vcpu *vcpu)
>
>         for (i = 0; i < nr_irqs; i++) {
>                 int byte_offset, bit_nr;
> -               u8 pendmask;
>
>                 byte_offset = intids[i] / BITS_PER_BYTE;
>                 bit_nr = intids[i] % BITS_PER_BYTE;
> --
> 2.14.2
>



[Index of Archives]     [Linux Kernel]     [Kernel Development Newbies]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite Hiking]     [Linux Kernel]     [Linux SCSI]