2H23 Priorities Update (08/23/2023)
Contents:
Work Group-Identified Priorities
Developer Infrastructure
This is a new WG that currently oversees the Build Farm project.
System Libraries
Lead is @Nathan Egge (Google).
Current focus is mostly Standard C and SSL library enablement.
(blocked) SL_00_003 - OpenSSL
(blocked) SL_00_004 - BoringSSL
This WG has 3 distinct subcategories:
Core system libraries (applies anywhere)
Android enablement
HPC
System Library work has the following cross-WG dependencies:
SSL work is blocked on vector crypto being ratified.
No projects are requesting RISE resources at this time.
Simulators/Emulators
Lead is @Daniel Barboza (Ventana).
Current focus is on Qemu improvements to improve overall developer experience around Qemu, including feature completeness in modeling the emulated userspace Linux environment, improvements to host support for certain platform features and improvements to the emulated platforms to sustain new use-cases.
A number of projects are already completed and upstreamed, and these are consequently crossed out.
(upstreaming) SE_01_002 - QEMU Virtual IRQ and IRQ filtering support
(upstreaming) SE_01_009 - QEMU ACPI support for AIA
(upstreaming) SE_01_010 - QEMU ACPI support for PLIC
No projects are requesting RISE resources at this time.
Language Runtimes
Lead is @Ludovic Henry (Rivos).
No projects are requesting RISE resources at this time.
Kernel and Virtualization
Lead is @Anup Patel (Ventana).
Current kernel projects focus on core ISA ("V" extension), feature completeness (KASAN, memory hotplug) and platform enablement (ACPI, IOMMU). Current KVM focus is on AIA virtualization and "V" extension virtualization.
A number of projects are already completed and upstreamed, and these are consequently crossed out.
Kernel
(upstreaming) LK_01_002 - ACPI support for PLIC driver
(upstreaming) LK_01_003 - AIA drivers with DT support
(upstreaming) LK_01_004 - ACPI support for AIA drivers
(upstreaming) LK_01_005 - Native/hosted debug support (aka HW breakpoint)
(upstreaming) LK_01_007 - IOMMU driver with DT support
(upstreaming) LK_01_020 - Vector crypto extensions discovery using HWPROBE
(upstreaming) LK_01_033 - Bitmanip extension discovery using HWPROBE
KVM
No projects are requesting RISE resources at this time.
Firmware
Lead is @Sunil V L (Ventana).
Currently prioritized projects primarily revolve around Tiano EDK2 enablement - core support to support new hardware (SSTC, CMO, MMU), platform support projects (StandaloneMmPkg for secure flash, MultiArchUefiPkg for PCIe OpRom emulation). Some work is already completed and is either going through upstreaming (CMO, MMU support) or further community validation (MultiArchUefiPkg). Two of the projects are net new contributions - StandaloneMmPkg port to RISC-V and TF-M port to RISC-V.
The CoVE and CoVE-IO specs need to evolve to accommodate StandaloneMmPkg scenario.
Tianocore EDK2 UEFI
TF-M
There's been an interest in porting TF-A, but this has not yet solidified into something concrete.
No projects are requesting RISE resources at this time.
Distro Integration
Lead is @Brian Harrington (Red Hat).
Work is focused on two kinds of projects.
Issues common to multiple Linux distros (e.g. bugs/features in common packages)
One such project category is around Profile- and Extension- Optimized Distros.
No 2H23 projects are currently defined.
Enabling a specific Linux distro, provided the Linux distro has a champion/vendor
The champion identifies the directions/projects.
The WG works to prioritize, unravel dependencies on other WGs or file projects in other WGs .
Further scoping happening with Tizen enablement based on Tizen RISC-V Status.
Overall, this WG currently suffers from very weak team engagement. This may indicate a lack of interest on behalf of WG members to invest into this category.
No projects are requesting RISE resources at this time.
Debug and Profiling
Lead is @Fei Wu (Intel).
Only two project have been identified with sufficient scope and detail.
No projects are requesting RISE resources at this time.
Compilers and Toolchains
Lead is @Jeff Law (Ventana).
Focus is LLVM and GCC-based projects targeting features and distro blockers (Zfa, shadow stacks, atomics) or optimization (fusion, autovectorization). Although some of the projects represent ongoing work, the WG has identified new projects like binary distribution of GCC-13 with backported patches for autovectorization.
A number of projects are already completed and upstreamed, and these are consequently crossed out.
LLVM Enablement
GCC Enablement
CT_00_008 - Backtracing support without using external tables (GCC)
(upstreaming) CT_00_007 - Fusion Support (GCC)
(upstreaming) CT_00_006 -- Zfa Support (GCC)
CT_00_002 - Inline Subword Atomics, Forward Compatible Mappings, Ztso (GCC)
Distribution
The following cross-WG dependencies exist:
No projects are requesting RISE resources at this time.
Specification Dependencies
UEFI PI: EDK2_00_02 - StandaloneMmPkg (PoC)
RVI SBI Debug Trigger Extension: LK_01_005 - Native/hosted debug support (aka HW breakpoint)
RVI psABI vector ABI: CT_03_001 - Binary Toolchain Packages
RVI psABI: CT_01_003 - Shadow Stacks (LLVM)
RVI psABI: CT_00_009 - Large Code Model (GCC) (https://github.com/riscv-non-isa/riscv-elf-psabi-doc/pull/388)
RVI Unified Discovery: Profile- and Extension- Optimized Distros