Re: [PATCH AUTOSEL 5.5 253/542] PCI/ATS: Restore EXPORT_SYMBOL_GPL() for pci_{enable,disable}_ats()

From: Greg Kroah-Hartman
Date: Fri Feb 14 2020 - 16:54:34 EST


On Fri, Feb 14, 2020 at 10:44:05AM -0500, Sasha Levin wrote:
> From: Greg Kroah-Hartman <gregkh@xxxxxxxxxx>
>
> [ Upstream commit bb950bca5d522119f8b9ce3f6cbac4841c6d6517 ]
>
> Commit d355bb209783 ("PCI/ATS: Remove unnecessary EXPORT_SYMBOL_GPL()")
> unexported a bunch of symbols from the PCI core since the only external
> users were non-modular IOMMU drivers. Although most of those symbols
> can remain private for now, 'pci_{enable,disable_ats()' is required for
> the ARM SMMUv3 driver to build as a module, otherwise we get a build
> failure as follows:
>
> | ERROR: "pci_enable_ats" [drivers/iommu/arm-smmu-v3.ko] undefined!
> | ERROR: "pci_disable_ats" [drivers/iommu/arm-smmu-v3.ko] undefined!
>
> Re-export these two functions so that the ARM SMMUv3 driver can be build
> as a module.
>
> Cc: Bjorn Helgaas <bhelgaas@xxxxxxxxxx>
> Cc: Joerg Roedel <jroedel@xxxxxxx>
> Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxx>
> [will: rewrote commit message]
> Signed-off-by: Will Deacon <will@xxxxxxxxxx>
> Tested-by: John Garry <john.garry@xxxxxxxxxx> # smmu v3
> Reviewed-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>
> Acked-by: Bjorn Helgaas <bhelgaas@xxxxxxxxxx>
> Signed-off-by: Joerg Roedel <jroedel@xxxxxxx>
> Signed-off-by: Sasha Levin <sashal@xxxxxxxxxx>
> ---
> drivers/pci/ats.c | 2 ++
> 1 file changed, 2 insertions(+)
>
> diff --git a/drivers/pci/ats.c b/drivers/pci/ats.c
> index b6f064c885c37..3ef0bb281e7cc 100644
> --- a/drivers/pci/ats.c
> +++ b/drivers/pci/ats.c
> @@ -69,6 +69,7 @@ int pci_enable_ats(struct pci_dev *dev, int ps)
> dev->ats_enabled = 1;
> return 0;
> }
> +EXPORT_SYMBOL_GPL(pci_enable_ats);
>
> /**
> * pci_disable_ats - disable the ATS capability
> @@ -87,6 +88,7 @@ void pci_disable_ats(struct pci_dev *dev)
>
> dev->ats_enabled = 0;
> }
> +EXPORT_SYMBOL_GPL(pci_disable_ats);
>
> void pci_restore_ats_state(struct pci_dev *dev)
> {
> --
> 2.20.1
>

This isn't needed to be backported as the problem it solves is not in
the 5.5 or older kernels, it only showed up in 5.6-rc1, and this was
part of a larger patchset.

So please drop from everywhere, thanks.

greg k-h