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