[PATCH v8 0/6] PCI: Remove most pcim_iounmap_regions() users

Philipp Stanner posted 6 patches 1 month, 1 week ago
drivers/block/mtip32xx/mtip32xx.c              | 18 ++++++++----------
drivers/fpga/dfl-pci.c                         | 16 ++++------------
drivers/gpio/gpio-merrifield.c                 | 15 ++++++++-------
.../net/ethernet/cavium/common/cavium_ptp.c    |  7 +++----
drivers/pci/devres.c                           |  8 ++++++--
include/linux/pci.h                            |  1 +
6 files changed, 30 insertions(+), 35 deletions(-)
[PATCH v8 0/6] PCI: Remove most pcim_iounmap_regions() users
Posted by Philipp Stanner 1 month, 1 week ago
Merge plan for this is the PCI-Tree.

After this series, only two users (net/ethernet/stmicro and
vdpa/solidrun) will remain to be ported in the subsequent merge window.
Doing them right now proved very difficult because of various conflicts
as they are currently also being reworked.

Changes in v8:
  - Patch "gpio: ..": Fix a bug: don't print the wrong error code. (Simon)
  - Split patch 1 into two patches to make adding of the new public API
    obvious (Bartosz)
  - Patch "ethernet: cavium: ...": Remove outdated sentences from the
    commit message.

Changes in v7:
  - Add Paolo's Acked-by.
  - Rebase on current master; drop patch No.1 which made
    pcim_request_region() public.

Changes in v6:
  - Remove the patches for "vdpa: solidrun" since the maintainer seems
    unwilling to review and discuss, not to mention approve, anything
    that is part of a wider patch series across other subsystems.
  - Change series's name to highlight that not all callers are removed
    by it.

Changes in v5:
  - Patch "ethernet: cavium": Re-add accidentally removed
    pcim_iounmap_region(). (Me)
  - Add Jens's Reviewed-by to patch "block: mtip32xx". (Jens)

Changes in v4:
  - Drop the "ethernet: stmicro: [...] patch since it doesn't apply to
    net-next, and making it apply to that prevents it from being
    applyable to PCI ._. (Serge, me)
  - Instead, deprecate pcim_iounmap_regions() and keep "ethernet:
    stimicro" as the last user for now.
  - ethernet: cavium: Use PTR_ERR_OR_ZERO(). (Andy)
  - vdpa: solidrun (Bugfix) Correct wrong printf string (was "psnet" instead of
    "snet"). (Christophe)
  - vdpa: solidrun (Bugfix): Add missing blank line. (Andy)
  - vdpa: solidrun (Portation): Use PTR_ERR_OR_ZERO(). (Andy)
  - Apply Reviewed-by's from Andy and Xu Yilun.

Changes in v3:
  - fpga/dfl-pci.c: remove now surplus wrapper around
    pcim_iomap_region(). (Andy)
  - block: mtip32xx: remove now surplus label. (Andy)
  - vdpa: solidrun: Bugfix: Include forgotten place where stack UB
    occurs. (Andy, Christophe)
  - Some minor wording improvements in commit messages. (Me)

Changes in v2:
  - Add a fix for the UB stack usage bug in vdap/solidrun. Separate
    patch, put stable kernel on CC. (Christophe, Andy).
  - Drop unnecessary pcim_release_region() in mtip32xx (Andy)
  - Consequently, drop patch "PCI: Make pcim_release_region() a public
    function", since there's no user anymore. (obsoletes the squash
    requested by Damien).
  - vdap/solidrun:
    • make 'i' an 'unsigned short' (Andy, me)
    • Use 'continue' to simplify loop (Andy)
    • Remove leftover blank line
  - Apply given Reviewed- / acked-bys (Andy, Damien, Bartosz)


Important things first:
This series is based on [1] and [2] which Bjorn Helgaas has currently
queued for v6.12 in the PCI tree.

This series shall remove pcim_iounmap_regions() in order to make way to
remove its brother, pcim_iomap_regions().

Regards,
P.

[1] https://lore.kernel.org/all/20240729093625.17561-4-pstanner@redhat.com/
[2] https://lore.kernel.org/all/20240807083018.8734-2-pstanner@redhat.com/

Philipp Stanner (6):
  PCI: Make pcim_iounmap_region() a public function
  PCI: Deprecate pcim_iounmap_regions()
  fpga/dfl-pci.c: Replace deprecated PCI functions
  block: mtip32xx: Replace deprecated PCI functions
  gpio: Replace deprecated PCI functions
  ethernet: cavium: Replace deprecated PCI functions

 drivers/block/mtip32xx/mtip32xx.c              | 18 ++++++++----------
 drivers/fpga/dfl-pci.c                         | 16 ++++------------
 drivers/gpio/gpio-merrifield.c                 | 15 ++++++++-------
 .../net/ethernet/cavium/common/cavium_ptp.c    |  7 +++----
 drivers/pci/devres.c                           |  8 ++++++--
 include/linux/pci.h                            |  1 +
 6 files changed, 30 insertions(+), 35 deletions(-)

-- 
2.47.0

Re: [PATCH v8 0/6] PCI: Remove most pcim_iounmap_regions() users
Posted by Bjorn Helgaas 3 weeks, 5 days ago
On Wed, Oct 16, 2024 at 11:49:03AM +0200, Philipp Stanner wrote:
> Merge plan for this is the PCI-Tree.
> 
> After this series, only two users (net/ethernet/stmicro and
> vdpa/solidrun) will remain to be ported in the subsequent merge window.
> Doing them right now proved very difficult because of various conflicts
> as they are currently also being reworked.
> 
> Changes in v8:
>   - Patch "gpio: ..": Fix a bug: don't print the wrong error code. (Simon)
>   - Split patch 1 into two patches to make adding of the new public API
>     obvious (Bartosz)
>   - Patch "ethernet: cavium: ...": Remove outdated sentences from the
>     commit message.
> 
> Changes in v7:
>   - Add Paolo's Acked-by.
>   - Rebase on current master; drop patch No.1 which made
>     pcim_request_region() public.
> 
> Changes in v6:
>   - Remove the patches for "vdpa: solidrun" since the maintainer seems
>     unwilling to review and discuss, not to mention approve, anything
>     that is part of a wider patch series across other subsystems.
>   - Change series's name to highlight that not all callers are removed
>     by it.
> 
> Changes in v5:
>   - Patch "ethernet: cavium": Re-add accidentally removed
>     pcim_iounmap_region(). (Me)
>   - Add Jens's Reviewed-by to patch "block: mtip32xx". (Jens)
> 
> Changes in v4:
>   - Drop the "ethernet: stmicro: [...] patch since it doesn't apply to
>     net-next, and making it apply to that prevents it from being
>     applyable to PCI ._. (Serge, me)
>   - Instead, deprecate pcim_iounmap_regions() and keep "ethernet:
>     stimicro" as the last user for now.
>   - ethernet: cavium: Use PTR_ERR_OR_ZERO(). (Andy)
>   - vdpa: solidrun (Bugfix) Correct wrong printf string (was "psnet" instead of
>     "snet"). (Christophe)
>   - vdpa: solidrun (Bugfix): Add missing blank line. (Andy)
>   - vdpa: solidrun (Portation): Use PTR_ERR_OR_ZERO(). (Andy)
>   - Apply Reviewed-by's from Andy and Xu Yilun.
> 
> Changes in v3:
>   - fpga/dfl-pci.c: remove now surplus wrapper around
>     pcim_iomap_region(). (Andy)
>   - block: mtip32xx: remove now surplus label. (Andy)
>   - vdpa: solidrun: Bugfix: Include forgotten place where stack UB
>     occurs. (Andy, Christophe)
>   - Some minor wording improvements in commit messages. (Me)
> 
> Changes in v2:
>   - Add a fix for the UB stack usage bug in vdap/solidrun. Separate
>     patch, put stable kernel on CC. (Christophe, Andy).
>   - Drop unnecessary pcim_release_region() in mtip32xx (Andy)
>   - Consequently, drop patch "PCI: Make pcim_release_region() a public
>     function", since there's no user anymore. (obsoletes the squash
>     requested by Damien).
>   - vdap/solidrun:
>     • make 'i' an 'unsigned short' (Andy, me)
>     • Use 'continue' to simplify loop (Andy)
>     • Remove leftover blank line
>   - Apply given Reviewed- / acked-bys (Andy, Damien, Bartosz)
> 
> 
> Important things first:
> This series is based on [1] and [2] which Bjorn Helgaas has currently
> queued for v6.12 in the PCI tree.
> 
> This series shall remove pcim_iounmap_regions() in order to make way to
> remove its brother, pcim_iomap_regions().
> 
> Regards,
> P.
> 
> [1] https://lore.kernel.org/all/20240729093625.17561-4-pstanner@redhat.com/
> [2] https://lore.kernel.org/all/20240807083018.8734-2-pstanner@redhat.com/
> 
> Philipp Stanner (6):
>   PCI: Make pcim_iounmap_region() a public function
>   PCI: Deprecate pcim_iounmap_regions()
>   fpga/dfl-pci.c: Replace deprecated PCI functions
>   block: mtip32xx: Replace deprecated PCI functions
>   gpio: Replace deprecated PCI functions
>   ethernet: cavium: Replace deprecated PCI functions
> 
>  drivers/block/mtip32xx/mtip32xx.c              | 18 ++++++++----------
>  drivers/fpga/dfl-pci.c                         | 16 ++++------------
>  drivers/gpio/gpio-merrifield.c                 | 15 ++++++++-------
>  .../net/ethernet/cavium/common/cavium_ptp.c    |  7 +++----
>  drivers/pci/devres.c                           |  8 ++++++--
>  include/linux/pci.h                            |  1 +
>  6 files changed, 30 insertions(+), 35 deletions(-)

Applied to pci/devm for v6.13, thanks!
Re: [PATCH v8 0/6] PCI: Remove most pcim_iounmap_regions() users
Posted by Philipp Stanner 4 weeks, 1 day ago
@Bjorn:
Are you OK with taking this?

Regards,
P.

On Wed, 2024-10-16 at 11:49 +0200, Philipp Stanner wrote:
> Merge plan for this is the PCI-Tree.
> 
> After this series, only two users (net/ethernet/stmicro and
> vdpa/solidrun) will remain to be ported in the subsequent merge
> window.
> Doing them right now proved very difficult because of various
> conflicts
> as they are currently also being reworked.
> 
> Changes in v8:
>   - Patch "gpio: ..": Fix a bug: don't print the wrong error code.
> (Simon)
>   - Split patch 1 into two patches to make adding of the new public
> API
>     obvious (Bartosz)
>   - Patch "ethernet: cavium: ...": Remove outdated sentences from the
>     commit message.
> 
> Changes in v7:
>   - Add Paolo's Acked-by.
>   - Rebase on current master; drop patch No.1 which made
>     pcim_request_region() public.
> 
> Changes in v6:
>   - Remove the patches for "vdpa: solidrun" since the maintainer
> seems
>     unwilling to review and discuss, not to mention approve, anything
>     that is part of a wider patch series across other subsystems.
>   - Change series's name to highlight that not all callers are
> removed
>     by it.
> 
> Changes in v5:
>   - Patch "ethernet: cavium": Re-add accidentally removed
>     pcim_iounmap_region(). (Me)
>   - Add Jens's Reviewed-by to patch "block: mtip32xx". (Jens)
> 
> Changes in v4:
>   - Drop the "ethernet: stmicro: [...] patch since it doesn't apply
> to
>     net-next, and making it apply to that prevents it from being
>     applyable to PCI ._. (Serge, me)
>   - Instead, deprecate pcim_iounmap_regions() and keep "ethernet:
>     stimicro" as the last user for now.
>   - ethernet: cavium: Use PTR_ERR_OR_ZERO(). (Andy)
>   - vdpa: solidrun (Bugfix) Correct wrong printf string (was "psnet"
> instead of
>     "snet"). (Christophe)
>   - vdpa: solidrun (Bugfix): Add missing blank line. (Andy)
>   - vdpa: solidrun (Portation): Use PTR_ERR_OR_ZERO(). (Andy)
>   - Apply Reviewed-by's from Andy and Xu Yilun.
> 
> Changes in v3:
>   - fpga/dfl-pci.c: remove now surplus wrapper around
>     pcim_iomap_region(). (Andy)
>   - block: mtip32xx: remove now surplus label. (Andy)
>   - vdpa: solidrun: Bugfix: Include forgotten place where stack UB
>     occurs. (Andy, Christophe)
>   - Some minor wording improvements in commit messages. (Me)
> 
> Changes in v2:
>   - Add a fix for the UB stack usage bug in vdap/solidrun. Separate
>     patch, put stable kernel on CC. (Christophe, Andy).
>   - Drop unnecessary pcim_release_region() in mtip32xx (Andy)
>   - Consequently, drop patch "PCI: Make pcim_release_region() a
> public
>     function", since there's no user anymore. (obsoletes the squash
>     requested by Damien).
>   - vdap/solidrun:
>     • make 'i' an 'unsigned short' (Andy, me)
>     • Use 'continue' to simplify loop (Andy)
>     • Remove leftover blank line
>   - Apply given Reviewed- / acked-bys (Andy, Damien, Bartosz)
> 
> 
> Important things first:
> This series is based on [1] and [2] which Bjorn Helgaas has currently
> queued for v6.12 in the PCI tree.
> 
> This series shall remove pcim_iounmap_regions() in order to make way
> to
> remove its brother, pcim_iomap_regions().
> 
> Regards,
> P.
> 
> [1]
> https://lore.kernel.org/all/20240729093625.17561-4-pstanner@redhat.com/
> [2]
> https://lore.kernel.org/all/20240807083018.8734-2-pstanner@redhat.com/
> 
> Philipp Stanner (6):
>   PCI: Make pcim_iounmap_region() a public function
>   PCI: Deprecate pcim_iounmap_regions()
>   fpga/dfl-pci.c: Replace deprecated PCI functions
>   block: mtip32xx: Replace deprecated PCI functions
>   gpio: Replace deprecated PCI functions
>   ethernet: cavium: Replace deprecated PCI functions
> 
>  drivers/block/mtip32xx/mtip32xx.c              | 18 ++++++++--------
> --
>  drivers/fpga/dfl-pci.c                         | 16 ++++------------
>  drivers/gpio/gpio-merrifield.c                 | 15 ++++++++-------
>  .../net/ethernet/cavium/common/cavium_ptp.c    |  7 +++----
>  drivers/pci/devres.c                           |  8 ++++++--
>  include/linux/pci.h                            |  1 +
>  6 files changed, 30 insertions(+), 35 deletions(-)
>