All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Arnd Bergmann" <arnd@arndb.de>
To: "Philipp Stanner" <pstanner@redhat.com>,
	"Bjorn Helgaas" <bhelgaas@google.com>,
	"Hanjun Guo" <guohanjun@huawei.com>, "Neil Brown" <neilb@suse.de>,
	"Kent Overstreet" <kent.overstreet@gmail.com>,
	"Jakub Kicinski" <kuba@kernel.org>,
	"Niklas Schnelle" <schnelle@linux.ibm.com>,
	"Uladzislau Koshchanka" <koshchanka@gmail.com>,
	"John Sanpe" <sanpeqf@gmail.com>,
	"Dave Jiang" <dave.jiang@intel.com>,
	"Masami Hiramatsu" <mhiramat@kernel.org>,
	"Kees Cook" <keescook@chromium.org>,
	"David Gow" <davidgow@google.com>,
	"Herbert Xu" <herbert@gondor.apana.org.au>,
	"Shuah Khan" <skhan@linuxfoundation.org>,
	"wuqiang.matt" <wuqiang.matt@bytedance.com>,
	"Yury Norov" <yury.norov@gmail.com>,
	"Jason Baron" <jbaron@akamai.com>,
	"Andrew Morton" <akpm@linux-foundation.org>,
	"Ben Dooks" <ben.dooks@codethink.co.uk>,
	"Danilo Krummrich" <dakr@redhat.com>
Cc: linux-kernel@vger.kernel.org, linux-pci@vger.kernel.org,
	Linux-Arch <linux-arch@vger.kernel.org>,
	stable@vger.kernel.org, "Arnd Bergmann" <arnd@kernel.org>
Subject: Re: [PATCH v3 5/5] lib, pci: unify generic pci_iounmap()
Date: Mon, 04 Dec 2023 14:53:29 +0100	[thread overview]
Message-ID: <a2cc43d6-38ea-4bd8-a828-e836326e8aeb@app.fastmail.com> (raw)
In-Reply-To: <20231204123834.29247-6-pstanner@redhat.com>

On Mon, Dec 4, 2023, at 13:38, Philipp Stanner wrote:
> The implementation of pci_iounmap() is currently scattered over two
> files, drivers/pci/iomap.c and lib/iomap.c. Additionally,
> architectures can define their own version.
>
> To have only one version, it's necessary to create a helper function,
> iomem_is_ioport(), that tells pci_iounmap() whether the passed address
> points to an ioport or normal memory.
>
> iomem_is_ioport() can be provided through two different ways:
>   1. The architecture itself provides it. As of today, the version
>      coming from lib/iomap.c de facto is the x86-specific version and
>      comes into play when CONFIG_GENERIC_IOMAP is selected. This rather
>      confusing naming is an artifact left by the removal of IA64.
>   2. As a default version in include/asm-generic/io.h for those
>      architectures that don't use CONFIG_GENERIC_IOMAP, but also don't
>      provide their own version of iomem_is_ioport().
>
> Once all architectures that support ports provide iomem_is_ioport(), the
> arch-specific definitions for pci_iounmap() can be removed and the archs
> can use the generic implementation, instead.
>
> Create a unified version of pci_iounmap() in drivers/pci/iomap.c.
> Provide the function iomem_is_ioport() in include/asm-generic/io.h
> (generic) and lib/iomap.c ("pseudo-generic" for x86).
>
> Remove the CONFIG_GENERIC_IOMAP guard around
> ARCH_WANTS_GENERIC_PCI_IOUNMAP so that configs that set
> CONFIG_GENERIC_PCI_IOMAP without CONFIG_GENERIC_IOMAP still get the
> function.
>
> Add TODOs for follow-up work on the "generic is not generic but
> x86-spcific"-Problem.
>
> Suggested-by: Arnd Bergmann <arnd@kernel.org>
> Signed-off-by: Philipp Stanner <pstanner@redhat.com>

Reviewed-by: Arnd Bergmann <arnd@arndb.de>

  parent reply	other threads:[~2023-12-04 13:53 UTC|newest]

Thread overview: 17+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-12-04 12:38 [PATCH v3 0/5] Regather scattered PCI-Code Philipp Stanner
2023-12-04 12:38 ` [PATCH v3 1/5] lib/pci_iomap.c: fix cleanup bugs in pci_iounmap() Philipp Stanner
2023-12-04 13:35   ` Arnd Bergmann
2023-12-04 12:38 ` [PATCH v3 2/5] lib: move pci_iomap.c to drivers/pci/ Philipp Stanner
2023-12-04 12:39   ` kernel test robot
2023-12-04 13:37   ` Arnd Bergmann
2023-12-04 12:38 ` [PATCH v3 3/5] lib: move pci-specific devres code " Philipp Stanner
2023-12-04 12:38 ` [PATCH v3 4/5] pci: move devres code from pci.c to devres.c Philipp Stanner
2023-12-04 12:38 ` [PATCH v3 5/5] lib, pci: unify generic pci_iounmap() Philipp Stanner
2023-12-04 13:39   ` Philipp Stanner
2023-12-04 13:50     ` Arnd Bergmann
2023-12-04 14:09       ` Philipp Stanner
2023-12-04 14:29         ` Arnd Bergmann
2023-12-04 13:53   ` Arnd Bergmann [this message]
2023-12-05 10:44   ` kernel test robot
2023-12-05 14:34     ` Philipp Stanner
2023-12-05 14:43       ` Arnd Bergmann

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=a2cc43d6-38ea-4bd8-a828-e836326e8aeb@app.fastmail.com \
    --to=arnd@arndb.de \
    --cc=akpm@linux-foundation.org \
    --cc=arnd@kernel.org \
    --cc=ben.dooks@codethink.co.uk \
    --cc=bhelgaas@google.com \
    --cc=dakr@redhat.com \
    --cc=dave.jiang@intel.com \
    --cc=davidgow@google.com \
    --cc=guohanjun@huawei.com \
    --cc=herbert@gondor.apana.org.au \
    --cc=jbaron@akamai.com \
    --cc=keescook@chromium.org \
    --cc=kent.overstreet@gmail.com \
    --cc=koshchanka@gmail.com \
    --cc=kuba@kernel.org \
    --cc=linux-arch@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-pci@vger.kernel.org \
    --cc=mhiramat@kernel.org \
    --cc=neilb@suse.de \
    --cc=pstanner@redhat.com \
    --cc=sanpeqf@gmail.com \
    --cc=schnelle@linux.ibm.com \
    --cc=skhan@linuxfoundation.org \
    --cc=stable@vger.kernel.org \
    --cc=wuqiang.matt@bytedance.com \
    --cc=yury.norov@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.