From: Charlie Jenkins <thecharlesjenkins@gmail.com>
To: Andrew Jones <andrew.jones@oss.qualcomm.com>
Cc: linux-kernel@vger.kernel.org, linux-riscv@lists.infradead.org,
kvm-riscv@lists.infradead.org, "Paul Walmsley" <pjw@kernel.org>,
"Palmer Dabbelt" <palmer@dabbelt.com>,
"Anup Patel" <anup@brainfault.org>,
"Clément Léger" <cleger@rivosinc.com>,
"Conor Dooley" <conor.dooley@microchip.com>,
"Guodong Xu" <guodong@riscstar.com>,
"Charlie Jenkins" <charlie@rivosinc.com>,
"Samuel Holland" <samuel.holland@sifive.com>
Subject: Re: [RFC PATCH v1 00/11] riscv: hwprobe: Introduce rva23u64 base behavior
Date: Wed, 4 Mar 2026 16:58:24 -0800 [thread overview]
Message-ID: <20260305005824.GA132269@inky.localdomain> (raw)
In-Reply-To: <20260206002349.96740-1-andrew.jones@oss.qualcomm.com>
On Thu, Feb 05, 2026 at 06:23:38PM -0600, Andrew Jones wrote:
> Users need a way determine that their harts conform to rva23u64 that
> isn't error-prone. While patches 2 and 6 make it possible to determine,
> it requires a bunch of probes and checks themselves (see patch9 for the
> recipe). This RFC proposes adding an RVA23U64 hwprobe base behavior
> (patch8) allowing easy determination. It also proposes adding the bases
> to /proc/cpuinfo (patches 10 and 11) -- but those two patches are probably
> even more RFCy than the hwprobe proposal...
>
> The first three patches have been posted previously by their respective
> authors and are currently under active review (except patch2 which
> appears to have gotten lost in the shuffle). I've collected these
> patches into the series since they're necessary for the base and
> because I wanted to repost patch2 and patch3 with some changes. patch4
> and patch6 expose more extensions to userspace. patch9 adds a consistency
> test for the new hwprobe base behavior bit.
Great series! Thanks for pulling these all together, I like this
direction. We had dropped patch2 because we were using it for some
misaligned access optimizations but then realized that the extension
wasn't useful for that so then the patches got lost.
In Linux 7.0, patch 1 got applied along with CFI using the first flags of
the second key so there is some rebasing to do.
I think putting the compatibility info in /proc/cpuinfo is a good idea.
There is always hesitance around /proc/cpuinfo because some ill-advised
programs try to parse information from it, but it is nice to have an
easy way for users to see the compatility and since you also added the
hwprobe interface for it this seems reasonable.
- Charlie
>
> Thanks,
> drew
>
>
> Andrew Jones (8):
> riscv: Add B to hwcap
> riscv: hwprobe.rst: Replace tabs with spaces
> riscv: Add Ziccamoa, Ziccif, Ziccrse, and Za64rs to hwprobe
> riscv: Export have_user_pmlen* booleans
> riscv: hwprobe: Introduce rva23u64 base behavior
> riscv: selftests: hwprobe: Check rva23u64 consistency
> riscv: /proc/cpuinfo: Add rva23 bases to output
> riscv: /proc/cpuinfo: Also output rva20 and rva22 isa bases
>
> Charlie Jenkins (1):
> riscv: Standardize extension capitilization
>
> Jesse Taube (1):
> RISC-V: Add Zicclsm to cpufeature and hwprobe
>
> Paul Walmsley (1):
> riscv: hwprobe: add support for RISCV_HWPROBE_KEY_IMA_EXT_1
>
> Documentation/arch/riscv/hwprobe.rst | 42 ++-
> arch/riscv/include/asm/cpufeature.h | 14 +
> arch/riscv/include/asm/hwcap.h | 23 +-
> arch/riscv/include/asm/hwprobe.h | 3 +-
> arch/riscv/include/asm/switch_to.h | 4 +-
> arch/riscv/include/uapi/asm/hwcap.h | 1 +
> arch/riscv/include/uapi/asm/hwprobe.h | 9 +-
> arch/riscv/kernel/cpu.c | 38 +++
> arch/riscv/kernel/cpufeature.c | 168 ++++++++++--
> arch/riscv/kernel/process.c | 12 +-
> arch/riscv/kernel/sys_hwprobe.c | 249 +++++++++++++-----
> arch/riscv/kvm/main.c | 2 +-
> arch/riscv/kvm/vcpu_fp.c | 28 +-
> arch/riscv/kvm/vcpu_onereg.c | 22 +-
> arch/riscv/kvm/vcpu_vector.c | 14 +-
> .../testing/selftests/riscv/hwprobe/hwprobe.c | 112 +++++++-
> .../selftests/riscv/hwprobe/which-cpus.c | 20 +-
> 17 files changed, 610 insertions(+), 151 deletions(-)
>
> --
> 2.43.0
>
_______________________________________________
linux-riscv mailing list
linux-riscv@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-riscv
prev parent reply other threads:[~2026-03-05 0:58 UTC|newest]
Thread overview: 34+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-02-06 0:23 [RFC PATCH v1 00/11] riscv: hwprobe: Introduce rva23u64 base behavior Andrew Jones
2026-02-06 0:23 ` [RFC PATCH v1 01/11] riscv: hwprobe: add support for RISCV_HWPROBE_KEY_IMA_EXT_1 Andrew Jones
2026-02-06 0:23 ` [RFC PATCH v1 02/11] RISC-V: Add Zicclsm to cpufeature and hwprobe Andrew Jones
2026-02-06 0:23 ` [RFC PATCH v1 03/11] riscv: Standardize extension capitilization Andrew Jones
2026-02-06 0:23 ` [RFC PATCH v1 04/11] riscv: Add B to hwcap Andrew Jones
2026-02-21 10:49 ` Guodong Xu
2026-02-24 23:04 ` Andrew Jones
2026-03-06 2:17 ` Guodong Xu
2026-03-06 18:27 ` Andrew Jones
2026-03-06 18:50 ` Conor Dooley
2026-03-06 19:04 ` Andrew Jones
2026-02-06 0:23 ` [RFC PATCH v1 05/11] riscv: hwprobe.rst: Replace tabs with spaces Andrew Jones
2026-02-06 0:23 ` [RFC PATCH v1 06/11] riscv: Add Ziccamoa, Ziccif, Ziccrse, and Za64rs to hwprobe Andrew Jones
2026-02-21 10:50 ` Guodong Xu
2026-02-24 23:22 ` Andrew Jones
2026-02-06 0:23 ` [RFC PATCH v1 07/11] riscv: Export have_user_pmlen* booleans Andrew Jones
2026-02-21 10:50 ` Guodong Xu
2026-02-24 23:32 ` Andrew Jones
2026-02-06 0:23 ` [RFC PATCH v1 08/11] riscv: hwprobe: Introduce rva23u64 base behavior Andrew Jones
2026-02-08 16:15 ` Andrew Jones
2026-02-21 10:51 ` Guodong Xu
2026-02-25 0:03 ` Andrew Jones
2026-03-06 12:29 ` Guodong Xu
2026-03-06 18:31 ` Andrew Jones
2026-03-06 12:08 ` Guodong Xu
2026-03-06 18:33 ` Andrew Jones
2026-02-06 0:23 ` [RFC PATCH v1 09/11] riscv: selftests: hwprobe: Check rva23u64 consistency Andrew Jones
2026-02-06 0:23 ` [RFC PATCH v1 10/11] riscv: /proc/cpuinfo: Add rva23 bases to output Andrew Jones
2026-02-21 10:52 ` Guodong Xu
2026-02-25 0:08 ` Andrew Jones
2026-03-06 12:47 ` Guodong Xu
2026-03-06 18:34 ` Andrew Jones
2026-02-06 0:23 ` [RFC PATCH v1 11/11] riscv: /proc/cpuinfo: Also output rva20 and rva22 isa bases Andrew Jones
2026-03-05 0:58 ` Charlie Jenkins [this message]
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=20260305005824.GA132269@inky.localdomain \
--to=thecharlesjenkins@gmail.com \
--cc=andrew.jones@oss.qualcomm.com \
--cc=anup@brainfault.org \
--cc=charlie@rivosinc.com \
--cc=cleger@rivosinc.com \
--cc=conor.dooley@microchip.com \
--cc=guodong@riscstar.com \
--cc=kvm-riscv@lists.infradead.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-riscv@lists.infradead.org \
--cc=palmer@dabbelt.com \
--cc=pjw@kernel.org \
--cc=samuel.holland@sifive.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