Preparing RISC-V Linux for RVA23
summary
Proposal compiles the kernel for the RVA23 profile so C code can use performance extensions (bitmanip, vector, hypervisor, CFI) instead of relegating them to handwritten asm and runtime checks. A new RVA23 defconfig makes many extensions compile-time enabled, letting GCC-15 generate better code (checksum example where compiler output outperforms handwritten asm). Patches remove runtime isa string checks and alternatives, improve performance and developer experience, but require safe early-boot handling, ISA-string/profile handling, and warns about crashing on non‑compliant hardware.
AI-written summary · about
chapters (11)
- 0:00Introduction to RVA23
- 1:23Why RVA23 standardization
- 2:31RVA23 features and ISA string
- 4:20Three categories of extensions
- 7:11Runtime vs compile-time discovery
- 9:21Handling unsupported hardware
- 13:15Compiler awareness of extensions
- 15:25Booting with enabled extensions
- 18:59Shortening ISA strings
- 21:55RVA23 devconfig proposal
- 23:22Q&A and feedback
related talks
27mTuning in-kernel routines on RISC-V
26mThe Big-endian RISC-V Linux Adventure
18mThe Big-endian RISC-V Linux Adventure
50mInitializing RISC-V A Guided Tour for ARM Developers
30mKeynote Panel: Linux and RISC-V: Principles for a Winning Partnership
34mRISC-V ACPI and UEFI Updates
31mPanel – Enterprise Linux Enablement on RISC-V
35mControl Flow Integrity on RISC-V Linux
