[PATCH v1 0/5] PCI: Drop duplicated tracking of a pci_dev's bound driver

Uwe Kleine-König posted 5 patches 2 years, 8 months ago
Only 1 patches received!
There is a newer version of this series
arch/powerpc/include/asm/ppc-pci.h            |  3 +-
arch/powerpc/kernel/eeh_driver.c              | 12 +++--
arch/x86/events/intel/uncore.c                |  2 +-
arch/x86/kernel/probe_roms.c                  |  2 +-
drivers/bcma/host_pci.c                       |  6 ++-
drivers/crypto/hisilicon/qm.c                 |  2 +-
drivers/crypto/qat/qat_common/adf_aer.c       |  2 +-
drivers/message/fusion/mptbase.c              |  4 +-
drivers/misc/cxl/guest.c                      | 21 ++++----
drivers/misc/cxl/pci.c                        | 25 ++++++----
.../ethernet/hisilicon/hns3/hns3_ethtool.c    |  3 +-
.../ethernet/marvell/prestera/prestera_pci.c  |  2 +-
drivers/net/ethernet/mellanox/mlxsw/pci.c     |  2 +-
.../ethernet/netronome/nfp/nfp_net_ethtool.c  |  2 +-
drivers/pci/iov.c                             | 23 +++++----
drivers/pci/pci-driver.c                      | 48 +++++++++----------
drivers/pci/pci.c                             | 10 ++--
drivers/pci/pcie/err.c                        | 35 +++++++-------
drivers/pci/xen-pcifront.c                    |  4 +-
drivers/ssb/pcihost_wrapper.c                 |  7 ++-
drivers/usb/host/xhci-pci.c                   |  3 +-
include/linux/pci.h                           |  2 +-
22 files changed, 121 insertions(+), 99 deletions(-)
[PATCH v1 0/5] PCI: Drop duplicated tracking of a pci_dev's bound driver
Posted by Uwe Kleine-König 2 years, 8 months ago
Hello,

struct pci_dev tracks the bound pci driver twice. This series is about
removing this duplication.

The first two patches are just cleanups. The third patch introduces a
wrapper that abstracts access to struct pci_dev->driver. In the next
patch (hopefully) all users are converted to use the new wrapper and
finally the fifth patch removes the duplication.

Note this series is only build tested (allmodconfig on several
architectures).

I'm open to restructure this series if this simplifies things. E.g. the
use of the new wrapper in drivers/pci could be squashed into the patch
introducing the wrapper. Patch 4 could be split by maintainer tree or
squashed into patch 3 completely.

Best regards
Uwe

Uwe Kleine-König (5):
  PCI: Simplify pci_device_remove()
  PCI: Drop useless check from pci_device_probe()
  PCI: Provide wrapper to access a pci_dev's bound driver
  PCI: Adapt all code locations to not use struct pci_dev::driver
    directly
  PCI: Drop duplicated tracking of a pci_dev's bound driver

 arch/powerpc/include/asm/ppc-pci.h            |  3 +-
 arch/powerpc/kernel/eeh_driver.c              | 12 +++--
 arch/x86/events/intel/uncore.c                |  2 +-
 arch/x86/kernel/probe_roms.c                  |  2 +-
 drivers/bcma/host_pci.c                       |  6 ++-
 drivers/crypto/hisilicon/qm.c                 |  2 +-
 drivers/crypto/qat/qat_common/adf_aer.c       |  2 +-
 drivers/message/fusion/mptbase.c              |  4 +-
 drivers/misc/cxl/guest.c                      | 21 ++++----
 drivers/misc/cxl/pci.c                        | 25 ++++++----
 .../ethernet/hisilicon/hns3/hns3_ethtool.c    |  3 +-
 .../ethernet/marvell/prestera/prestera_pci.c  |  2 +-
 drivers/net/ethernet/mellanox/mlxsw/pci.c     |  2 +-
 .../ethernet/netronome/nfp/nfp_net_ethtool.c  |  2 +-
 drivers/pci/iov.c                             | 23 +++++----
 drivers/pci/pci-driver.c                      | 48 +++++++++----------
 drivers/pci/pci.c                             | 10 ++--
 drivers/pci/pcie/err.c                        | 35 +++++++-------
 drivers/pci/xen-pcifront.c                    |  4 +-
 drivers/ssb/pcihost_wrapper.c                 |  7 ++-
 drivers/usb/host/xhci-pci.c                   |  3 +-
 include/linux/pci.h                           |  2 +-
 22 files changed, 121 insertions(+), 99 deletions(-)


base-commit: 2734d6c1b1a089fb593ef6a23d4b70903526fe0c
-- 
2.30.2


Re: [PATCH v1 0/5] PCI: Drop duplicated tracking of a pci_dev's bound driver
Posted by Greg Kroah-Hartman 2 years, 8 months ago
On Thu, Jul 29, 2021 at 10:37:35PM +0200, Uwe Kleine-König wrote:
> Hello,
> 
> struct pci_dev tracks the bound pci driver twice. This series is about
> removing this duplication.
> 
> The first two patches are just cleanups. The third patch introduces a
> wrapper that abstracts access to struct pci_dev->driver. In the next
> patch (hopefully) all users are converted to use the new wrapper and
> finally the fifth patch removes the duplication.
> 
> Note this series is only build tested (allmodconfig on several
> architectures).
> 
> I'm open to restructure this series if this simplifies things. E.g. the
> use of the new wrapper in drivers/pci could be squashed into the patch
> introducing the wrapper. Patch 4 could be split by maintainer tree or
> squashed into patch 3 completely.
> 
> Best regards
> Uwe
> 
> Uwe Kleine-König (5):
>   PCI: Simplify pci_device_remove()
>   PCI: Drop useless check from pci_device_probe()
>   PCI: Provide wrapper to access a pci_dev's bound driver
>   PCI: Adapt all code locations to not use struct pci_dev::driver
>     directly
>   PCI: Drop duplicated tracking of a pci_dev's bound driver

Other than my objection to patch 5/5 lack of changelog, looks sane to
me:

Acked-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>