Re: [PATCH v3 0/2] RISC-V: KVM: Optimize hfence request handling for SMP guests

Anup Patel <[email protected]> Sat, 1 Aug 2026 14:05:52 +0530
Newsgroups org.kernel.vger.kvm,org.infradead.lists.kvm-riscv,org.infradead.lists.linux-riscv,org.kernel.vger.linux-kernel
Message-ID <CAAhSdy17xH1D7RpGnqJubqax_hTQaKpRu5g0tSDd2U6Rx71V9g@mail.gmail.com>
On Fri, Jul 31, 2026 at 3:11 PM Wang Yechao <[email protected]> wrote:
>
> This series improves the hfence request handling in RISC-V KVM,
> targeting scenarios where multiple VCPUs are running an SMP guest.
>
> The first patch Introduce make_xfence_request_nodata for FENCE.I
> requests and moves the hfence data/type validation out of the
> VCPU loop to avoid redundant checks on every iteration.
>
> The second patch fixes a more subtle performance issue: when one
> VCPU's hfence queue becomes full and triggers a fallback, the
> current code applies the fallback to all VCPUs indiscriminately.
> This unnecessarily degrades healthy VCPUs and can cause their
> queues to fill up prematurely due to lack of processing it.
>
> With these changes, fallback is applied only to the VCPUs that
> actually need it, preserving the efficiency of the normal path
> for others.
>
> Changes in v3:
>  - Re-order the PATCH1 and PATCH2, let the fix PATCH as first patch.
>  - Link to v2:
>  https://lore.kernel.org/kvm-riscv/[email protected]/
>
> Changes in v2:
>  - Fix the patch01 broken the KVM_REQ_FENCE_I request(Sashiko AI review).
>
>  - Link to v1:
>  https://lore.kernel.org/linux-riscv/[email protected]/
>
> Wang Yechao (2):
>   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
>
>  arch/riscv/kvm/tlb.c | 46 +++++++++++++++++++++++++++++++++-----------
>  1 file changed, 35 insertions(+), 11 deletions(-)
>
> --
> 2.39.3
>

Queued this series for Linux-7.3

Thanks,
Anup