[GIT PULL] KVM/riscv changes for 7.3

Paolo Bonzini pbonzini at redhat.com
Tue Aug 18 04:08:00 PDT 2026


On Sun, Aug 16, 2026 at 6:30 PM Anup Patel <anup at brainfault.org> wrote:
>
> Hi Paolo,
>
> There is a small conflict between the kvm-riscv tree and the riscv tree which
> slipped through the cracks. This conflict will appear at your end if the 7.3
> pull-request from RISC-V tree is merged before your 7.3 pull-request.
>
> This can be resolved as follows:
>
> diff --cc arch/riscv/kvm/vcpu_vector.c
> index 3c3183b39ae2a,bf5c94d8786b5..0000000000000
> --- a/arch/riscv/kvm/vcpu_vector.c
> +++ b/arch/riscv/kvm/vcpu_vector.c
> @@@ -56,9 -56,8 +56,8 @@@ void kvm_riscv_vcpu_guest_vector_restor
>                                          unsigned long *isa)
>   {
>         if ((cntx->sstatus & SR_VS) != SR_VS_OFF) {
>  -              if (riscv_isa_extension_available(isa, v))
>  +              if (riscv_isa_extension_available(isa, V))
> -                       __kvm_riscv_vector_restore(cntx);
> -               kvm_riscv_vcpu_vector_clean(cntx);
> +                       riscv_v_flags_set(riscv_v_flags() |
> RISCV_V_VCPU_NEED_RESTORE);
>         }
>   }
>
> Best Regards,
> Anup

Thanks, pulled now.

Paolo

>
>
> On Sat, Aug 15, 2026 at 4:28 PM Anup Patel <anup at brainfault.org> wrote:
> >
> > Hi Paolo,
> >
> > We have the following KVM RISC-V changes for 7.3:
> > 1) Svadu/Zicfiss/Zicfilp FWFT support for Guest
> > 2) Use try_cmpxchg for IMSIC MRIF RMW
> > 3) More arch-specific tracepoints in KVM RISC-V
> > 4) Eager Page Splitting for KVM RISC-V
> > 5) Optimize hfence request handling for SMP Guests
> > 6) Improve dirty log clearing by skipping zero bits in mask
> > 7) Guard HFENCE range loops against overflow
> > 8) CPU PM notifiers in KVM RISC-V for non-retentive idle states
> > 9) Fix kernel-mode vector context save/restore for Guest
> >
> > In addition to the above, we also have a few small fixes such as
> > limit checks, array overflow checks, data type changes, etc.
> >
> > Please pull.
> >
> > Regards,
> > Anup
> >
> > The following changes since commit f5098b6bae761e346ebcd9da7f95622c04733cff:
> >
> >   Linux 7.2-rc5 (2026-07-26 14:45:48 -0700)
> >
> > are available in the Git repository at:
> >
> >   https://github.com/kvm-riscv/linux.git tags/kvm-riscv-7.3-1
> >
> > for you to fetch changes up to b5060a4aa33d7d78a8c1837ab08ef0c81ea96650:
> >
> >   RISC-V: KVM: fix vcpu vector context handling for kernel-mode vector
> > (2026-08-13 13:20:02 +0530)
> >
> > ----------------------------------------------------------------
> > KVM/riscv changes for 7.3
> >
> > - Svadu/Zicfiss/Zicfilp FWFT support for Guest
> > - Use try_cmpxchg for IMSIC MRIF RMW
> > - More arch-specific tracepoints in KVM RISC-V
> > - Eager Page Splitting for KVM RISC-V
> > - Optimize hfence request handling for SMP Guests
> > - Improve dirty log clearing by skipping zero bits in mask
> > - Guard HFENCE range loops against overflow
> > - CPU PM notifiers in KVM RISC-V for non-retentive idle states
> > - Fix kernel-mode vector context save/restore for Guest
> >
> > ----------------------------------------------------------------
> > Andy Chiu (3):
> >       riscv: vector: refactor riscv_v_start_kernel_context
> >       riscv: vector: allow non-preemptible kernel-mode vector with IRQs off
> >       RISC-V: KVM: fix vcpu vector context handling for kernel-mode vector
> >
> > Bingyu.Xian (2):
> >       RISC-V: KVM: Use unsigned int for vma_pageshift
> >       RISC-V: KVM: Widen G-stage fault address to gpa_t
> >
> > Guidong Han (1):
> >       RISC-V: KVM: Fix PMU event info array size overflow
> >
> > Inochi Amaoto (11):
> >       RISC-V: KVM: Add support for Svadu FWFT features
> >       KVM: riscv: selftests: add Svadu FWFT extension to get-reg-list test
> >       RISC-V: KVM: Allow Zicfiss/Zicfilp extensions for Guest/VM
> >       RISC-V: KVM: Add ssp context save/restore
> >       RISC-V: KVM: Handle software-check exits for VCPU
> >       RISC-V: KVM: Add support for control-flow integrity FWFT features
> >       KVM: riscv: selftests: add Zicfiss/Zicfilp extension to get-reg-list test
> >       RISC-V: KVM: Add SBI extension validate callback
> >       RISC-V: KVM: Add SBI FWFT validation support
> >       RISC-V: KVM: Reset the SBI extension when disable it
> >       RISC-V: KVM: Mark the reset callback of FWFT extension always dirties CSR
> >
> > Pengpeng Hou (4):
> >       RISC-V: KVM: Allow memslots ending at the GPA limit
> >       RISC-V: KVM: Reject overlapping AIA IMSIC address fields
> >       RISC-V: KVM: Guard HFENCE range loops against overflow
> >       RISC-V: KVM: Avoid one-word masks for SBI v0.1 all-harts
> >
> > Wang Yechao (8):
> >       RISC-V: KVM: Add the split page cache for ioctl context
> >       RISC-V: KVM: Split huge pages when dirty logging is enabled
> >       RISC-V: KVM: Remove redundant TLB flush operations
> >       RISC-V: KVM: Split huge pages during KVM_CLEAR_DIRTY_LOG
> >       RISC-V: KVM: Add the eager_page_split module parameter
> >       RISC-V: KVM: Separate req and fallback_req masks in make_xfence_request
> >       RISC-V: KVM: Introduce make_xfence_request_nodata for FENCE.I requests
> >       RISC-V: KVM: Improve dirty log clearing by skipping zero bits in mask
> >
> > Yicong Yang (1):
> >       RISC-V: KVM: Use try_cmpxchg for IMSIC MRIF RMW
> >
> > Yong-Xuan Wang (2):
> >       KVM: RISC-V: Clear former VCPU cache on virtualization disable
> >       KVM: RISC-V: Add CPU PM notifier for non-retention idle states
> >
> > Yuhang.Chen (1):
> >       RISC-V: KVM: Add more arch-specific tracepoints
> >
> > Yuhang.chen (1):
> >       RISC-V: KVM: Account VM-scoped allocations to the VM cgroup
> >
> > Zongmin Zhou (1):
> >       KVM: riscv: Fix infinite loop in NACL hfence entry allocation
> >
> >  Documentation/admin-guide/kernel-parameters.txt  |   7 +-
> >  arch/riscv/include/asm/csr.h                     |   1 +
> >  arch/riscv/include/asm/kvm_aia.h                 |   3 +
> >  arch/riscv/include/asm/kvm_gstage.h              |   9 +-
> >  arch/riscv/include/asm/kvm_host.h                |  10 ++
> >  arch/riscv/include/asm/kvm_vcpu_insn.h           |   4 +-
> >  arch/riscv/include/asm/kvm_vcpu_sbi.h            |   4 +
> >  arch/riscv/include/asm/kvm_vcpu_vector.h         |  24 +++
> >  arch/riscv/include/asm/processor.h               |   8 +
> >  arch/riscv/include/asm/simd.h                    |  16 +-
> >  arch/riscv/include/asm/vector.h                  |   5 +
> >  arch/riscv/include/uapi/asm/kvm.h                |  13 ++
> >  arch/riscv/kernel/kernel_mode_vector.c           |  88 +++++++---
> >  arch/riscv/kvm/aia.c                             |  42 +++++
> >  arch/riscv/kvm/aia_aplic.c                       |   3 +-
> >  arch/riscv/kvm/aia_device.c                      |   6 +
> >  arch/riscv/kvm/aia_imsic.c                       |  18 +-
> >  arch/riscv/kvm/gstage.c                          |  82 ++++++++-
> >  arch/riscv/kvm/isa.c                             |   2 +
> >  arch/riscv/kvm/main.c                            | 112 ++++++++++--
> >  arch/riscv/kvm/mmu.c                             | 108 +++++++++++-
> >  arch/riscv/kvm/nacl.c                            |   2 +-
> >  arch/riscv/kvm/tlb.c                             | 117 ++++++++++---
> >  arch/riscv/kvm/trace.h                           |  81 ++++++++-
> >  arch/riscv/kvm/vcpu.c                            |  34 ++++
> >  arch/riscv/kvm/vcpu_config.c                     |   2 +
> >  arch/riscv/kvm/vcpu_exit.c                       |  20 ++-
> >  arch/riscv/kvm/vcpu_insn.c                       |  17 +-
> >  arch/riscv/kvm/vcpu_onereg.c                     |  68 +++++++-
> >  arch/riscv/kvm/vcpu_pmu.c                        |  16 +-
> >  arch/riscv/kvm/vcpu_sbi.c                        |  30 ++++
> >  arch/riscv/kvm/vcpu_sbi_fwft.c                   | 207 ++++++++++++++++++++++-
> >  arch/riscv/kvm/vcpu_sbi_v01.c                    |  52 +++---
> >  arch/riscv/kvm/vcpu_vector.c                     |  26 ++-
> >  tools/testing/selftests/kvm/riscv/get-reg-list.c |  90 ++++++++++
> >  35 files changed, 1169 insertions(+), 158 deletions(-)
>




More information about the linux-riscv mailing list