Code that iterates over all standard PCI BARs typically uses PCI_STD_RESOURCE_END, but this is error-prone because it requires "i <= PCI_STD_RESOURCE_END" rather than something like "i < PCI_STD_NUM_BARS". We could add such a definition and use it the same way PCI_SRIOV_NUM_BARS is used. The patchset also replaces constant (6) with new define PCI_STD_NUM_BARS where appropriate and removes local declarations for the number of PCI BARs. Changes in v3: - Updated commits description. - Refactored "< PCI_ROM_RESOURCE" with "< PCI_STD_NUM_BARS" in loops. - Refactored "<= BAR_5" with "< PCI_STD_NUM_BARS" in loops. - Removed local define GASKET_NUM_BARS. - Removed local define PCI_NUM_BAR_RESOURCES. Changes in v2: - Reversed checks in pci_iomap_range,pci_iomap_wc_range. - Refactored loops in vfio_pci to keep PCI_STD_RESOURCES. - Added 2 new patches to replace the magic constant with new define. - Splitted net patch in v1 to separate stmmac and dwc-xlgmac patches. Denis Efremov (26): PCI: Add define for the number of standard PCI BARs PCI: hv: Use PCI_STD_NUM_BARS PCI: dwc: Use PCI_STD_NUM_BARS PCI: endpoint: Use PCI_STD_NUM_BARS misc: pci_endpoint_test: Use PCI_STD_NUM_BARS s390/pci: Use PCI_STD_NUM_BARS x86/PCI: Loop using PCI_STD_NUM_BARS alpha/PCI: Use PCI_STD_NUM_BARS ia64: Use PCI_STD_NUM_BARS stmmac: pci: Loop using PCI_STD_NUM_BARS net: dwc-xlgmac: Loop using PCI_STD_NUM_BARS ixgb: use PCI_STD_NUM_BARS e1000: Use PCI_STD_NUM_BARS rapidio/tsi721: Loop using PCI_STD_NUM_BARS efifb: Loop using PCI_STD_NUM_BARS fbmem: use PCI_STD_NUM_BARS vfio_pci: Loop using PCI_STD_NUM_BARS scsi: pm80xx: Use PCI_STD_NUM_BARS ata: sata_nv: Use PCI_STD_NUM_BARS staging: gasket: Use PCI_STD_NUM_BARS serial: 8250_pci: Use PCI_STD_NUM_BARS pata_atp867x: Use PCI_STD_NUM_BARS memstick: use PCI_STD_NUM_BARS USB: core: Use PCI_STD_NUM_BARS usb: pci-quirks: Use PCI_STD_NUM_BARS devres: use PCI_STD_NUM_BARS arch/alpha/kernel/pci-sysfs.c | 8 ++--- arch/ia64/sn/pci/pcibr/pcibr_dma.c | 4 +-- arch/s390/include/asm/pci.h | 5 +-- arch/s390/include/asm/pci_clp.h | 6 ++-- arch/s390/pci/pci.c | 16 +++++----- arch/s390/pci/pci_clp.c | 6 ++-- arch/x86/pci/common.c | 2 +- arch/x86/pci/intel_mid_pci.c | 2 +- drivers/ata/pata_atp867x.c | 2 +- drivers/ata/sata_nv.c | 2 +- drivers/memstick/host/jmb38x_ms.c | 2 +- drivers/misc/pci_endpoint_test.c | 8 ++--- drivers/net/ethernet/intel/e1000/e1000.h | 1 - drivers/net/ethernet/intel/e1000/e1000_main.c | 2 +- drivers/net/ethernet/intel/ixgb/ixgb.h | 1 - drivers/net/ethernet/intel/ixgb/ixgb_main.c | 2 +- .../net/ethernet/stmicro/stmmac/stmmac_pci.c | 4 +-- .../net/ethernet/synopsys/dwc-xlgmac-pci.c | 2 +- drivers/pci/controller/dwc/pci-dra7xx.c | 2 +- .../pci/controller/dwc/pci-layerscape-ep.c | 2 +- drivers/pci/controller/dwc/pcie-artpec6.c | 2 +- .../pci/controller/dwc/pcie-designware-plat.c | 2 +- drivers/pci/controller/dwc/pcie-designware.h | 2 +- drivers/pci/controller/pci-hyperv.c | 10 +++--- drivers/pci/endpoint/functions/pci-epf-test.c | 10 +++--- drivers/pci/pci-sysfs.c | 4 +-- drivers/pci/pci.c | 13 ++++---- drivers/pci/proc.c | 4 +-- drivers/pci/quirks.c | 4 +-- drivers/rapidio/devices/tsi721.c | 2 +- drivers/scsi/pm8001/pm8001_hwi.c | 2 +- drivers/scsi/pm8001/pm8001_init.c | 2 +- drivers/staging/gasket/gasket_constants.h | 3 -- drivers/staging/gasket/gasket_core.c | 12 +++---- drivers/staging/gasket/gasket_core.h | 4 +-- drivers/tty/serial/8250/8250_pci.c | 8 ++--- drivers/usb/core/hcd-pci.c | 2 +- drivers/usb/host/pci-quirks.c | 2 +- drivers/vfio/pci/vfio_pci.c | 11 ++++--- drivers/vfio/pci/vfio_pci_config.c | 32 ++++++++++--------- drivers/vfio/pci/vfio_pci_private.h | 4 +-- drivers/video/fbdev/core/fbmem.c | 4 +-- drivers/video/fbdev/efifb.c | 2 +- include/linux/pci-epc.h | 2 +- include/linux/pci.h | 2 +- include/uapi/linux/pci_regs.h | 1 + lib/devres.c | 2 +- 47 files changed, 112 insertions(+), 115 deletions(-) -- 2.21.0 _______________________________________________ devel mailing list devel@xxxxxxxxxxxxxxxxxxxxxx http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel