Linux 7.3 Adds Support For Several Newer RISC-V Extensions

Linux 7.3 Adds Support For Several Newer RISC-V Extensions

With the in-development Linux 7.3 is support for discovering and enumerating support for several newer RISC-V ISA extensions. Plus there are improvements to its control flow integrity Shadow Stack handling, CPU context switch support for QoS tagging, using UEFI runtime services for restart and powering off, and other improvements. The new RISC-V extension support with Linux 7.3 includes the Smcsrind, Sscsrind, Smcntrpmf, Ssccfg, Smcdeleg, Zicclsm, Ziccamoa, Ziccif, Ziccrse, Za64rs, and Ssqosid extensions. Smcsrind/Sscsrind is for an indirect access mechanism for Control and Status Registers (CSRs). Smcntrpmf is part of the Privileged Specification and adds privilege mode filtering for the cycle and instret counters. Ssccfg is for Supervisor Counter Configuration for letting the supervisor mode access and manage delegated hardware performance counters and configuration states. Smcdeleg is the Supervisor Counter Delegation extension and encompasses all CSRs and behavior modifications for a hart over all privilege levels. Zicclsm is the extension for the CPU and main memory support for misaligned loads and stores. With Zicclsm present, scalar and vector memory access instructions can cross byte boundaries without a hardware exception. Ziccamoa mandates all main memory regions with cacheability and coherence support all atomic memory operations in the base A extension. Ziccif indicates the main memory supports instruction fetches with atomicity requirements. Ziccrse is for indicating the main memory guarantees forward progress for Load-Reserved/Store-Conditional sequences. Za64rs guarantees reservation sets used by LR/SC instructions are contiguous, among other requirements. Lastly, Ssqosid is for Supervisor Quality of Service Identifiers for memory/cache bandwidth monitoring and the like. More details on these new RISC-V extensions in Linux 7.3 and other CPU port improvements via this pull now in Linux Git.

Original Source

Read the full article at Phoronix →

KhanList aggregates and links to publicly available news content. We do not host full articles from third-party sources. Always verify important information with original sources.