[GIT PULL] KVM/riscv changes for 6.16

Paolo Bonzini pbonzini at redhat.com
Mon May 26 13:22:24 PDT 2025


On Sat, May 24, 2025 at 6:53 PM Anup Patel <anup at brainfault.org> wrote:
>
> Hi Paolo,
>
> We have the following KVM RISC-V changes for 6.16:
> 1) Add vector registers to get-reg-list selftest
> 2) VCPU reset related improvements
> 3) Remove scounteren initialization from VCPU reset
> 4) Support VCPU reset from userspace using set_mpstate() ioctl
>     (NOTE: we have re-used KVM_MP_STATE_INIT_RECEIVED
>      for this purpose since it is a temporary state. This way of
>      VCPU reset only resets the register state and does not
>      affect the actual VCPU MP_STATE. This new mechanism
>      of VCPU reset can be used by KVM user space upon
>      SBI system reset to reset the register state of the VCPU
>      initiating SBI system reset. )

Pulled, thanks. Note that KVM_CAP_RISCV_MP_STATE_RESET is 242 due to
conflicts with kvm-arm's assignment of capability numbers.

Paolo

> Please pull.
>
> Regards,
> Anup
>
> The following changes since commit 87ec7d5249bb8ebf40261420da069fa238c21789:
>
>   KVM: RISC-V: reset smstateen CSRs (2025-05-01 18:26:14 +0530)
>
> are available in the Git repository at:
>
>   https://github.com/kvm-riscv/linux.git tags/kvm-riscv-6.16-1
>
> for you to fetch changes up to 7917be170928189fefad490d1a1237fdfa6b856f:
>
>   RISC-V: KVM: lock the correct mp_state during reset (2025-05-24
> 21:30:47 +0530)
>
> ----------------------------------------------------------------
> KVM/riscv changes for 6.16
>
> - Add vector registers to get-reg-list selftest
> - VCPU reset related improvements
> - Remove scounteren initialization from VCPU reset
> - Support VCPU reset from userspace using set_mpstate() ioctl
>
> ----------------------------------------------------------------
> Atish Patra (5):
>       KVM: riscv: selftests: Align the trap information wiht pt_regs
>       KVM: riscv: selftests: Decode stval to identify exact exception type
>       KVM: riscv: selftests: Add vector extension tests
>       RISC-V: KVM: Remove experimental tag for RISC-V
>       RISC-V: KVM: Remove scounteren initialization
>
> Radim Krčmář (5):
>       KVM: RISC-V: refactor vector state reset
>       KVM: RISC-V: refactor sbi reset request
>       KVM: RISC-V: remove unnecessary SBI reset state
>       RISC-V: KVM: add KVM_CAP_RISCV_MP_STATE_RESET
>       RISC-V: KVM: lock the correct mp_state during reset
>
>  Documentation/virt/kvm/api.rst                     |  11 ++
>  arch/riscv/include/asm/kvm_aia.h                   |   3 -
>  arch/riscv/include/asm/kvm_host.h                  |  17 ++-
>  arch/riscv/include/asm/kvm_vcpu_sbi.h              |   3 +
>  arch/riscv/include/asm/kvm_vcpu_vector.h           |   6 +-
>  arch/riscv/kernel/head.S                           |  10 ++
>  arch/riscv/kvm/Kconfig                             |   2 +-
>  arch/riscv/kvm/aia_device.c                        |   4 +-
>  arch/riscv/kvm/vcpu.c                              |  64 +++++-----
>  arch/riscv/kvm/vcpu_sbi.c                          |  32 ++++-
>  arch/riscv/kvm/vcpu_sbi_hsm.c                      |  13 +-
>  arch/riscv/kvm/vcpu_sbi_system.c                   |  10 +-
>  arch/riscv/kvm/vcpu_vector.c                       |  13 +-
>  arch/riscv/kvm/vm.c                                |  13 ++
>  include/uapi/linux/kvm.h                           |   1 +
>  .../selftests/kvm/include/riscv/processor.h        |  23 +++-
>  tools/testing/selftests/kvm/lib/riscv/handlers.S   | 139 +++++++++++----------
>  tools/testing/selftests/kvm/lib/riscv/processor.c  |   2 +-
>  tools/testing/selftests/kvm/riscv/arch_timer.c     |   2 +-
>  tools/testing/selftests/kvm/riscv/ebreak_test.c    |   2 +-
>  tools/testing/selftests/kvm/riscv/get-reg-list.c   | 132 +++++++++++++++++++
>  tools/testing/selftests/kvm/riscv/sbi_pmu_test.c   |  24 +++-
>  22 files changed, 374 insertions(+), 152 deletions(-)
>




More information about the kvm-riscv mailing list