[GIT PULL] RISC-V Patches for the 6.16 Merge Window, Part 2

Palmer Dabbelt palmer at dabbelt.com
Thu Jun 5 14:13:12 PDT 2025


On Mon, 26 May 2025 13:13:48 PDT (-0700), Alexandre Ghiti wrote:
> The following changes since commit 08f8ac2266d9ede2bf2abc7763b5261f97fdafe9:
>
>    riscv: Improve Kconfig help for RISCV_ISA_V_PREEMPTIVE (2025-05-14 
> 04:58:49 +0000)
>
> are available in the Git repository at:
>
>    git://git.kernel.org/pub/scm/linux/kernel/git/alexghiti/linux 
> tags/riscv-mw2-6.16-rc1
>
> for you to fetch changes up to dc5240f09bca7b5fc72ad8894d6b9321bce51139:
>
>    RISC-V: vDSO: Wire up getrandom() vDSO implementation (2025-05-23 
> 12:53:18 +0000)
>
> ----------------------------------------------------------------
> riscv patches for 6.16-rc1, part 2
>
> * Performance improvements
>    - Add support for vdso getrandom
>    - Implement raid6 calculations using vectors
>    - Introduce svinval tlb invalidation
>
> * Cleanup
>    - A bunch of deduplication of the macros we use for manipulating 
> instructions
>
> * Misc
>    - Introduce a kunit test for kprobes
>    - Add support for mseal as riscv fits the requirements (thanks to 
> Lorenzo for making sure of that :))
>
> ----------------------------------------------------------------
>
> All the patches have been tested on our github CI and no regressions 
> were found against 6.15-rc6 
> (https://github.com/linux-riscv/linux/pull/435/checks whose results can 
> be seen here 
> https://mazarinen.tail1c623.ts.net/riscv-linux/linux-all/build/v6.15-rc6-53-g765c7f75999b8/). 
>
>
> ----------------------------------------------------------------
>
> Alexandre Ghiti (5):
>        riscv: Fix typo EXRACT -> EXTRACT
>        riscv: Strengthen duplicate and inconsistent definition of RV_X()
>        riscv: Move all duplicate insn parsing macros into asm/insn.h
>        Merge patch series "Move duplicated instructions macros into 
> asm/insn.h"
>        Merge patch series "riscv: kprobes: Clean up instruction simulation"

I'm dropping the kprobes one for now.  I don't see anything wrong with 
it, but it depends on the asm/insn.h refactoring and that has a bunch of 
conflicts due to the rebase.

> Chunyan Zhang (1):
>        raid6: Add RISC-V SIMD syndrome and recovery calculations
>
> Jisheng Zhang (1):
>        riscv: enable mseal sysmap for RV64
>
> Mayuresh Chitale (1):
>        riscv: mm: Add support for Svinval extension
>
> Nam Cao (12):
>        riscv: kprobes: Move branch_rs2_idx to insn.h
>        riscv: kprobes: Move branch_funct3 to insn.h
>        riscv: kprobes: Remove duplication of RV_EXTRACT_JTYPE_IMM
>        riscv: kprobes: Remove duplication of RV_EXTRACT_RS1_REG
>        riscv: kprobes: Remove duplication of RV_EXTRACT_BTYPE_IMM
>        riscv: kproves: Remove duplication of RVC_EXTRACT_JTYPE_IMM
>        riscv: kprobes: Remove duplication of RVC_EXTRACT_C2_RS1_REG
>        riscv: kprobes: Remove duplication of RVC_EXTRACT_BTYPE_IMM
>        riscv: kprobes: Remove duplication of RV_EXTRACT_RD_REG
>        riscv: kprobes: Remove duplication of RV_EXTRACT_UTYPE_IMM
>        riscv: kprobes: Remove duplication of RV_EXTRACT_ITYPE_IMM
>        riscv: Add kprobes KUnit test
>
> Xi Ruoyao (1):
>        RISC-V: vDSO: Wire up getrandom() vDSO implementation
>
>   arch/riscv/Kconfig                                 |    2 +
>   arch/riscv/include/asm/insn.h                      |  215 +++++++++-
>   arch/riscv/include/asm/vdso/getrandom.h            |   30 ++
>   arch/riscv/kernel/machine_kexec_file.c             |    2 +-
>   arch/riscv/kernel/probes/simulate-insn.c           |   94 +----
>   arch/riscv/kernel/tests/Kconfig.debug              |   12 +
>   arch/riscv/kernel/tests/Makefile                   |    1 +
>   arch/riscv/kernel/tests/kprobes/Makefile           |    1 +
>   arch/riscv/kernel/tests/kprobes/test-kprobes-asm.S |  229 ++++++++++
>   arch/riscv/kernel/tests/kprobes/test-kprobes.c     |   56 +++
>   arch/riscv/kernel/tests/kprobes/test-kprobes.h     |   24 ++
>   arch/riscv/kernel/traps_misaligned.c               |  144 +------
>   arch/riscv/kernel/vdso.c                           |    2 +-
>   arch/riscv/kernel/vdso/Makefile                    |   13 +
>   arch/riscv/kernel/vdso/getrandom.c                 |   10 +
>   arch/riscv/kernel/vdso/vdso.lds.S                  |    3 +
>   arch/riscv/kernel/vdso/vgetrandom-chacha.S         |  249 +++++++++++
>   arch/riscv/kernel/vector.c                         |    2 +-
>   arch/riscv/kvm/vcpu_insn.c                         |  128 +-----
>   arch/riscv/mm/tlbflush.c                           |   31 ++
>   include/linux/raid/pq.h                            |    5 +
>   lib/raid6/Makefile                                 |    1 +
>   lib/raid6/algos.c                                  |    9 +
>   lib/raid6/recov_rvv.c                              |  229 ++++++++++
>   lib/raid6/rvv.c                                    | 1212 
> +++++++++++++++++++++++++++++++++++++++++++++++++++++
>   lib/raid6/rvv.h                                    |   39 ++
>   tools/testing/selftests/vDSO/vgetrandom-chacha.S   |    2 +
>   27 files changed, 2375 insertions(+), 370 deletions(-)
>   create mode 100644 arch/riscv/include/asm/vdso/getrandom.h
>   create mode 100644 arch/riscv/kernel/tests/kprobes/Makefile
>   create mode 100644 arch/riscv/kernel/tests/kprobes/test-kprobes-asm.S
>   create mode 100644 arch/riscv/kernel/tests/kprobes/test-kprobes.c
>   create mode 100644 arch/riscv/kernel/tests/kprobes/test-kprobes.h
>   create mode 100644 arch/riscv/kernel/vdso/getrandom.c
>   create mode 100644 arch/riscv/kernel/vdso/vgetrandom-chacha.S
>   create mode 100644 lib/raid6/recov_rvv.c
>   create mode 100644 lib/raid6/rvv.c
>   create mode 100644 lib/raid6/rvv.h
>
>
> _______________________________________________
> linux-riscv mailing list
> linux-riscv at lists.infradead.org
> http://lists.infradead.org/mailman/listinfo/linux-riscv



More information about the linux-riscv mailing list