[PATCH v2 00/10] PCI: leak fixes, removable generic PCI host, assorted stuff

Bjorn Helgaas helgaas at kernel.org
Thu May 10 15:51:32 PDT 2018


On Mon, Apr 30, 2018 at 07:48:34AM +0200, Jan Kiszka wrote:
> Changes in v2:
>  - patch 1: commit message reworking as suggested by Lorenzo
>  - patch 3-6: split-up as suggested by Bjorn
>  - patch 8: new
>  - patch 10: select PCI_DOMAINS from PCI_HOST_GENERIC, rather than
>    allowing manual choice, as suggested by Lorenzo
> 
> This primarily enables to unbind the generic PCI host controller without
> leaving lots of memory leaks behind. A previous proposal patch 5 was
> rejected because of those issues [1].
> 
> The fixes have been validated in the Jailhouse setup, where we add and
> remove a virtual PCI host controller on hypervisor activation/
> deactivation, with the help of kmemleak.
> 
> Besides that, there is tiny PCI API cleanup at the beginning and
> support for manually enabled PCI domains at the end that enables the
> Jailhouse scenario.
> 
> Jan
> 
> [1] http://lkml.iu.edu/hypermail/linux/kernel/1606.3/00072.html
> 
> 
> CC: Jingoo Han <jingoohan1 at gmail.com>
> CC: Joao Pinto <Joao.Pinto at synopsys.com>
> CC: Lorenzo Pieralisi <lorenzo.pieralisi at arm.com>
> CC: Will Deacon <will.deacon at arm.com>
> 
> Jan Kiszka (10):
>   PCI: Make pci_get_new_domain_nr() static
>   PCI: Fix memory leak of devm_pci_alloc_host_bridge()
>   PCI: Factor out __of_pci_get_host_bridge_resources()
>   PCI: Add dev parameter to __of_pci_get_host_bridge_resources()
>   PCI: Replace pr_*() with dev_*() in
>     __of_pci_get_host_bridge_resources()
>   PCI: Introduce devm_of_pci_get_host_bridge_resources()
>   PCI: Convert of_pci_get_host_bridge_resources() users to devm variant
>   PCI: Deprecate of_pci_get_host_bridge_resources()
>   PCI: Add support for unbinding the generic PCI host controller
>   PCI: Enable PCI_DOMAINS along with generic PCI host controller

Applied to pci/resource for v4.18, thanks!

I added the reviewed-by tags from Vladimir (thank you!) and replaced the
"Deprecate" patch by the v3 "Remove" patch.

>  drivers/pci/dwc/pcie-designware-host.c |   2 +-
>  drivers/pci/host/Kconfig               |   1 +
>  drivers/pci/host/pci-aardvark.c        |   5 +-
>  drivers/pci/host/pci-ftpci100.c        |   4 +-
>  drivers/pci/host/pci-host-common.c     |  13 ++++
>  drivers/pci/host/pci-host-generic.c    |   1 +
>  drivers/pci/host/pci-v3-semi.c         |   3 +-
>  drivers/pci/host/pci-versatile.c       |   3 +-
>  drivers/pci/host/pci-xgene.c           |   3 +-
>  drivers/pci/host/pcie-altera.c         |   5 +-
>  drivers/pci/host/pcie-iproc-platform.c |   4 +-
>  drivers/pci/host/pcie-rcar.c           |   5 +-
>  drivers/pci/host/pcie-rockchip.c       |   4 +-
>  drivers/pci/host/pcie-xilinx-nwl.c     |   4 +-
>  drivers/pci/host/pcie-xilinx.c         |   4 +-
>  drivers/pci/of.c                       | 105 +++++++++++++++++++++------------
>  drivers/pci/pci.c                      |   6 +-
>  drivers/pci/probe.c                    |   4 +-
>  include/linux/of_pci.h                 |  42 ++++++++++++-
>  include/linux/pci-ecam.h               |   1 +
>  include/linux/pci.h                    |   3 -
>  21 files changed, 149 insertions(+), 73 deletions(-)
> 
> -- 
> 2.13.6
> 



More information about the linux-arm-kernel mailing list