kernel_samsung_a53x/drivers/pci/controller
Uwe Kleine-König af79046b9f PCI: exynos: Don't discard .remove() callback
[ Upstream commit 83a939f0fdc208ff3639dd3d42ac9b3c35607fd2 ]

With CONFIG_PCI_EXYNOS=y and exynos_pcie_remove() marked with __exit, the
function is discarded from the driver. In this case a bound device can
still get unbound, e.g via sysfs. Then no cleanup code is run resulting in
resource leaks or worse.

The right thing to do is do always have the remove callback available.
This fixes the following warning by modpost:

  WARNING: modpost: drivers/pci/controller/dwc/pci-exynos: section mismatch in reference: exynos_pcie_driver+0x8 (section: .data) -> exynos_pcie_remove (section: .exit.text)

(with ARCH=x86_64 W=1 allmodconfig).

Fixes: 340cba6092c2 ("pci: Add PCIe driver for Samsung Exynos")
Link: https://lore.kernel.org/r/20231001170254.2506508-2-u.kleine-koenig@pengutronix.de
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>
Reviewed-by: Alim Akhtar <alim.akhtar@samsung.com>
Cc: stable@vger.kernel.org
Signed-off-by: Sasha Levin <sashal@kernel.org>
2024-11-18 11:43:27 +01:00
..
cadence Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
dwc PCI: exynos: Don't discard .remove() callback 2024-11-18 11:43:27 +01:00
mobiveil Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
Kconfig Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
Makefile Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
pci-aardvark.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
pci-ftpci100.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
pci-host-common.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
pci-host-generic.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
pci-hyperv-intf.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
pci-hyperv.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
pci-loongson.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
pci-mvebu.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
pci-rcar-gen2.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
pci-tegra.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
pci-thunder-ecam.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
pci-thunder-pem.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
pci-v3-semi.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
pci-versatile.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
pci-xgene-msi.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
pci-xgene.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
pcie-altera-msi.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
pcie-altera.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
pcie-brcmstb.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
pcie-hisi-error.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
pcie-iproc-bcma.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
pcie-iproc-msi.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
pcie-iproc-platform.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
pcie-iproc.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
pcie-iproc.h Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
pcie-mediatek.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
pcie-rcar-ep.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
pcie-rcar-host.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
pcie-rcar.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
pcie-rcar.h Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
pcie-rockchip-ep.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
pcie-rockchip-host.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
pcie-rockchip.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
pcie-rockchip.h Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
pcie-tango.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
pcie-xilinx-cpm.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
pcie-xilinx-nwl.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
pcie-xilinx.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
vmd.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00