linux/drivers/pci/controller
Gustavo A. R. Silva d0684fd0bd PCI: hv: Use struct_size() helper
One of the more common cases of allocation size calculations is finding
the size of a structure that has a zero-sized array at the end, along
with memory for some number of elements for that array. For example:

struct hv_dr_state {
	...
        struct hv_pcidev_description func[];
};

struct pci_bus_relations {
	...
        struct pci_function_description func[];
} __packed;

Make use of the struct_size() helper instead of an open-coded version
in order to avoid any potential type mistakes.

So, replace the following forms:

offsetof(struct hv_dr_state, func) +
	(sizeof(struct hv_pcidev_description) *
	(relations->device_count))

offsetof(struct pci_bus_relations, func) +
	(sizeof(struct pci_function_description) *
	(bus_rel->device_count))

with:

struct_size(dr, func, relations->device_count)

and

struct_size(bus_rel, func, bus_rel->device_count)

respectively.

Link: https://lore.kernel.org/r/20200525164319.GA13596@embeddedor
Signed-off-by: Gustavo A. R. Silva <gustavoars@kernel.org>
Signed-off-by: Lorenzo Pieralisi <lorenzo.pieralisi@arm.com>
Reviewed-by: Wei Liu <wei.liu@kernel.org>
2020-05-28 15:37:43 +01:00
..
cadence Merge branch 'remotes/lorenzo/pci/mmio-dma-ranges' 2019-11-28 08:54:53 -06:00
dwc Merge branch 'remotes/lorenzo/pci/qcom' 2020-04-02 14:27:02 -05:00
mobiveil PCI: mobiveil: Fix unmet dependency warning for PCIE_MOBIVEIL_PLAT 2020-03-18 10:39:52 +00:00
Kconfig PCI: mobiveil: Modularize the Mobiveil PCIe Host Bridge IP driver 2020-02-21 11:53:22 +00:00
Makefile PCI: mobiveil: Modularize the Mobiveil PCIe Host Bridge IP driver 2020-02-21 11:53:22 +00:00
pci-aardvark.c Merge branch 'remotes/lorenzo/pci/mmio-dma-ranges' 2019-11-28 08:54:53 -06:00
pci-ftpci100.c PCI: ftpci100: Use inbound resources for setup 2019-11-20 17:00:14 +00:00
pci-host-common.c PCI: of: Add inbound resource parsing to helpers 2019-11-20 16:59:58 +00:00
pci-host-generic.c PCI: Fix comment typos 2019-04-13 11:17:15 -05:00
pci-hyperv-intf.c PCI: hv: Add a Hyper-V PCI interface driver for software backchannel interface 2019-08-22 00:25:12 -07:00
pci-hyperv.c PCI: hv: Use struct_size() helper 2020-05-28 15:37:43 +01:00
pci-mvebu.c PCI: mvebu: mvebu_pcie_map_registers __iomem fix 2019-10-17 11:02:47 +01:00
pci-rcar-gen2.c
pci-tegra.c PCI: tegra: Use pci_parse_request_of_pci_ranges() 2020-02-24 13:47:44 +00:00
pci-thunder-ecam.c
pci-thunder-pem.c PCI: Remove unused includes and superfluous struct declaration 2019-11-21 07:49:29 -06:00
pci-v3-semi.c PCI: v3-semi: Use inbound resources for setup 2019-11-20 17:00:14 +00:00
pci-versatile.c PCI: of: Add inbound resource parsing to helpers 2019-11-20 16:59:58 +00:00
pci-xgene-msi.c
pci-xgene.c PCI: xgene: Use inbound resources for setup 2019-11-20 17:00:14 +00:00
pcie-altera-msi.c PCI: altera-msi: Allow building as module 2019-05-30 15:34:54 +01:00
pcie-altera.c PCI: of: Add inbound resource parsing to helpers 2019-11-20 16:59:58 +00:00
pcie-brcmstb.c pci-v5.7-changes 2020-04-03 14:25:02 -07:00
pcie-iproc-bcma.c
pcie-iproc-msi.c PCI: iproc-msi: Fix __iomem annotation in decode_msi_hwirq() 2019-10-17 11:01:24 +01:00
pcie-iproc-platform.c PCI: of: Add inbound resource parsing to helpers 2019-11-20 16:59:58 +00:00
pcie-iproc.c PCI: iproc: Apply quirk_paxc_bridge() for module as well as built-in 2019-12-12 17:21:36 -06:00
pcie-iproc.h PCI: iproc: Reject unconfigured physical functions from PAXC 2018-07-13 11:56:55 +01:00
pcie-mediatek.c PCI: of: Add inbound resource parsing to helpers 2019-11-20 16:59:58 +00:00
pcie-rcar.c Merge branch 'remotes/lorenzo/pci/mmio-dma-ranges' 2019-11-28 08:54:53 -06:00
pcie-rockchip-ep.c PCI: rockchip: Fix rockchip_pcie_ep_assert_intx() bitwise operations 2019-04-15 10:39:26 +01:00
pcie-rockchip-host.c PCI: rockchip: Fix IO outbound ATU register number 2019-12-12 15:25:37 -06:00
pcie-rockchip.c
pcie-rockchip.h Merge branch 'remotes/lorenzo/pci/mmio-dma-ranges' 2019-11-28 08:54:53 -06:00
pcie-tango.c
pcie-xilinx-nwl.c PCI: of: Add inbound resource parsing to helpers 2019-11-20 16:59:58 +00:00
pcie-xilinx.c PCI: of: Add inbound resource parsing to helpers 2019-11-20 16:59:58 +00:00
vmd.c PCI: vmd: Add two VMD Device IDs 2020-01-29 16:51:37 -06:00