Re: [Xen-devel] [PATCH 2/4] xen/pciback: Save the number of MSI-X entries to be copied later.

From: Jan Beulich
Date: Fri Feb 12 2016 - 04:25:32 EST


>>> On 11.02.16 at 22:10, <konrad.wilk@xxxxxxxxxx> wrote:
> c/s 8135cf8b092723dbfcc611fe6fdcb3a36c9951c5
> "xen/pciback: Save xen_pci_op commands before processing it"
> would copyback the processed values - which was great.
>
> However it missed the case that xen_pcibk_enable_msix - when
> completing would overwrite op->value (which had the number
> of MSI-X vectors requested) with the return value (which for
> success was zero). Hence the copy-back routine (which would use
> op->value) would copy exactly zero MSI-X vectors back.
>
> CC: stable@xxxxxxxxxxxxxxx
> Signed-off-by: Konrad Rzeszutek Wilk <konrad.wilk@xxxxxxxxxx>

Reviewed-by: Jan Beulich <jbeulich@xxxxxxxx>

but I'd prefer to see ...

> --- a/drivers/xen/xen-pciback/pciback_ops.c
> +++ b/drivers/xen/xen-pciback/pciback_ops.c
> @@ -335,7 +335,9 @@ void xen_pcibk_do_op(struct work_struct *data)
> struct xen_pcibk_dev_data *dev_data = NULL;
> struct xen_pci_op *op = &pdev->op;
> int test_intx = 0;
> -
> +#ifdef CONFIG_PCI_MSI
> + unsigned int nr = 0;
> +#endif
> *op = pdev->sh_info->op;
> barrier();
> dev = xen_pcibk_get_pci_dev(pdev, op->domain, op->bus, op->devfn);

... the blank line separating declarations from statements to stay.

Jan