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

Re: [Xen-devel] [PATCH v2 1/3] vpci/msi: fix unbind loop



>>> On 15.05.18 at 16:10, <roger.pau@xxxxxxxxxx> wrote:
> The current unbind loop on failure in vpci_msi_enable is wrong and
> will only work correctly if the initial pirq is 0. Fix this by adding
> a proper bound.
> 
> Reported-by: Jan Beulich <jbeulich@xxxxxxxx>
> Signed-off-by: Roger Pau Monné <roger.pau@xxxxxxxxxx>

Reviewed-by: Jan Beulich <jbeulich@xxxxxxxx>

Jürgen,

any thoughts on taking this one for 4.11?

Jan

> --- a/xen/arch/x86/hvm/vmsi.c
> +++ b/xen/arch/x86/hvm/vmsi.c
> @@ -710,7 +710,7 @@ static int vpci_msi_enable(const struct pci_dev *pdev, 
> uint32_t data,
>                       "%04x:%02x:%02x.%u: failed to bind PIRQ %u: %d\n",
>                       pdev->seg, pdev->bus, PCI_SLOT(pdev->devfn),
>                       PCI_FUNC(pdev->devfn), pirq + i, rc);
> -            while ( bind.machine_irq-- )
> +            while ( bind.machine_irq-- > pirq )
>                  pt_irq_destroy_bind(pdev->domain, &bind);
>              spin_lock(&pdev->domain->event_lock);
>              unmap_domain_pirq(pdev->domain, pirq);
> -- 
> 2.17.0




_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxxx
https://lists.xenproject.org/mailman/listinfo/xen-devel

 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.