From: "Arnd Bergmann" <arnd@arndb.de>
To: "Yan Zhao" <yan.y.zhao@intel.com>,
"Linus Walleij" <linus.walleij@linaro.org>,
guoren <guoren@kernel.org>, "Brian Cain" <bcain@quicinc.com>,
"Jonas Bonn" <jonas@southpole.se>,
"Stefan Kristiansson" <stefan.kristiansson@saunalahti.fi>,
"Stafford Horne" <shorne@gmail.com>
Cc: Linux-Arch <linux-arch@vger.kernel.org>,
linux-kernel@vger.kernel.org,
"linux-csky@vger.kernel.org" <linux-csky@vger.kernel.org>,
linux-hexagon@vger.kernel.org,
"linux-openrisc@vger.kernel.org" <linux-openrisc@vger.kernel.org>
Subject: Re: [PATCH 0/4] apply page shift to PFN instead of VA in pfn_to_virt
Date: Wed, 31 Jan 2024 12:48:38 +0100 [thread overview]
Message-ID: <5e55b5c0-6c8d-45b4-ac04-cf694bcb08d3@app.fastmail.com> (raw)
In-Reply-To: <20240131055159.2506-1-yan.y.zhao@intel.com>
On Wed, Jan 31, 2024, at 06:51, Yan Zhao wrote:
> This is a tiny fix to pfn_to_virt() for some platforms.
>
> The original implementaion of pfn_to_virt() takes PFN instead of PA as the
> input to macro __va, with PAGE_SHIFT applying to the converted VA, which
> is not right under most conditions, especially when there's an offset in
> __va.
>
>
> Yan Zhao (4):
> asm-generic/page.h: apply page shift to PFN instead of VA in
> pfn_to_virt
> csky: apply page shift to PFN instead of VA in pfn_to_virt
> Hexagon: apply page shift to PFN instead of VA in pfn_to_virt
> openrisc: apply page shift to PFN instead of VA in pfn_to_virt
Nice catch, this is clearly a correct fix, and I can take
the series through the asm-generic tree if we want to take
this approach.
I made a couple of interesting observations looking at this patch
though:
- this function is only used in architecture specific code on
m68k, riscv and s390, though a couple of other architectures
have the same definition.
- There is another function that does the same thing called
pfn_to_kaddr(), which is defined on arm, arm64, csky,
loongarch, mips, nios2, powerpc, s390, sh, sparc and x86,
as well as yet another pfn_va() on parisc.
- the asm-generic/page.h file used to be included by h8300, c6x
and blackfin, all of which are now gone. It has no users left
and can just as well get removed, unless we find a new use
for it.
Since it looks like the four broken functions you fix
don't have a single caller, maybe it would be better to
just remove them all?
How exactly did you notice the function being wrong,
did you try to add a user somewhere, or just read through
the code?
Arnd
next prev parent reply other threads:[~2024-01-31 11:49 UTC|newest]
Thread overview: 18+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-01-31 5:51 [PATCH 0/4] apply page shift to PFN instead of VA in pfn_to_virt Yan Zhao
2024-01-31 5:57 ` [PATCH 1/4] asm-generic/page.h: " Yan Zhao
2024-02-23 11:26 ` Guo Ren
2024-02-29 13:34 ` Linus Walleij
2024-02-29 23:01 ` Yan Zhao
2024-01-31 5:59 ` [PATCH 2/4] csky: " Yan Zhao
2024-02-23 11:26 ` Guo Ren
2024-01-31 6:00 ` [PATCH 3/4] Hexagon: " Yan Zhao
2024-01-31 6:01 ` [PATCH 4/4] openrisc: " Yan Zhao
2024-01-31 7:37 ` [PATCH 0/4] " Linus Walleij
2024-01-31 11:48 ` Arnd Bergmann [this message]
2024-02-01 0:01 ` Yan Zhao
2024-02-01 5:46 ` Arnd Bergmann
2024-02-01 10:46 ` Geert Uytterhoeven
2024-02-02 7:27 ` Arnd Bergmann
2024-02-02 1:02 ` Yan Zhao
2024-02-02 7:04 ` Arnd Bergmann
2024-02-02 14:09 ` Yan Zhao
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=5e55b5c0-6c8d-45b4-ac04-cf694bcb08d3@app.fastmail.com \
--to=arnd@arndb.de \
--cc=bcain@quicinc.com \
--cc=guoren@kernel.org \
--cc=jonas@southpole.se \
--cc=linus.walleij@linaro.org \
--cc=linux-arch@vger.kernel.org \
--cc=linux-csky@vger.kernel.org \
--cc=linux-hexagon@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-openrisc@vger.kernel.org \
--cc=shorne@gmail.com \
--cc=stefan.kristiansson@saunalahti.fi \
--cc=yan.y.zhao@intel.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).