Linux 5.17 Adds RISC-V sv48 Support For Being Able To Handle More Memory

In addition to Linux 5.17 bringing support for the low-cost StarFive RISC-V platform among other RISC-V updates, more changes for this royalty-free processor ISA were sent in on Friday.

Most notable with these latest RISC-V changes for Linux 5.17 is providing sv48 support. RISC-V sv48 is for allowing 48-bit virtual address space support.

With a fourth level of the page table, RISC-V 64-bit kernels can now address up to 128TB of virtual address space and in turn allows up to 64TB of physical memory. Granted, we haven't seen any high-end RISC-V server platforms being able to support anything remotely close to existing limits -- I haven't even seen any high capacity RAM RISC-V server at all yet -- but this is good for the future.


sv48 details within The RISC-V Instruction Set Manual, Volume II: Privileged Architecturem v1.10.


The Linux 5.17 can automatically detect at run-time sv48 support and fall-back otherwise to 3-level page table support for non-sv48 hardware. Patches for Linux sv48 support date back to at least 2020 and have gone through a number of rounds of review before being deemed ready for mainline.

The sv48 support and other last minute RISC-V additions for Linux 5.17 were sent in as part of this pull to mainline.