Re: [PATCH] PCI: use PCI_SRIOV_NUM_BARS in loops instead of PCI_IOV_RESOURCE_END
From: Bjorn Helgaas
Date: Tue Aug 06 2019 - 16:45:08 EST
On Tue, Aug 06, 2019 at 05:07:15PM +0300, Denis Efremov wrote:
> It's a general pattern to write loops with 'i < PCI_SRIOV_NUM_BARS'
> condition. This patch fixes remaining loops which violates this implicit
> agreement.
>
> Signed-off-by: Denis Efremov <efremov@xxxxxxxxx>
Applied with Kuppuswamy's reviewed-by to pci/misc for v5.4, thanks!
> ---
> drivers/pci/iov.c | 4 ++--
> drivers/pci/setup-bus.c | 4 ++--
> 2 files changed, 4 insertions(+), 4 deletions(-)
>
> diff --git a/drivers/pci/iov.c b/drivers/pci/iov.c
> index 525fd3f272b3..9b48818ced01 100644
> --- a/drivers/pci/iov.c
> +++ b/drivers/pci/iov.c
> @@ -557,8 +557,8 @@ static void sriov_restore_state(struct pci_dev *dev)
> ctrl |= iov->ctrl & PCI_SRIOV_CTRL_ARI;
> pci_write_config_word(dev, iov->pos + PCI_SRIOV_CTRL, ctrl);
>
> - for (i = PCI_IOV_RESOURCES; i <= PCI_IOV_RESOURCE_END; i++)
> - pci_update_resource(dev, i);
> + for (i = 0; i < PCI_SRIOV_NUM_BARS; i++)
> + pci_update_resource(dev, i + PCI_IOV_RESOURCES);
>
> pci_write_config_dword(dev, iov->pos + PCI_SRIOV_SYS_PGSIZE, iov->pgsz);
> pci_iov_set_numvfs(dev, iov->num_VFs);
> diff --git a/drivers/pci/setup-bus.c b/drivers/pci/setup-bus.c
> index 79b1fa6519be..e7dbe21705ba 100644
> --- a/drivers/pci/setup-bus.c
> +++ b/drivers/pci/setup-bus.c
> @@ -1662,8 +1662,8 @@ static int iov_resources_unassigned(struct pci_dev *dev, void *data)
> int i;
> bool *unassigned = data;
>
> - for (i = PCI_IOV_RESOURCES; i <= PCI_IOV_RESOURCE_END; i++) {
> - struct resource *r = &dev->resource[i];
> + for (i = 0; i < PCI_SRIOV_NUM_BARS; i++) {
> + struct resource *r = &dev->resource[i + PCI_IOV_RESOURCES];
> struct pci_bus_region region;
>
> /* Not assigned or rejected by kernel? */
> --
> 2.21.0
>