Content-Length: 9901 | pFad | http://lwn.net/Articles/998053/

LoongArch: KVM: Add separate vmid support [LWN.net]
|
|
Subscribe / Log in / New account

LoongArch: KVM: Add separate vmid support

From:  Bibo Mao <maobibo-AT-loongson.cn>
To:  Tianrui Zhao <zhaotianrui-AT-loongson.cn>, Huacai Chen <chenhuacai-AT-kernel.org>
Subject:  [RFC 0/5] LoongArch: KVM: Add separate vmid support
Date:  Wed, 13 Nov 2024 11:17:22 +0800
Message-ID:  <20241113031727.2815628-1-maobibo@loongson.cn>
Cc:  WANG Xuerui <kernel-AT-xen0n.name>, kvm-AT-vger.kernel.org, loongarch-AT-lists.linux.dev, linux-kernel-AT-vger.kernel.org
Archive-link:  Article

LoongArch KVM hypervisor supports two-level MMU, vpid index is used
for stage1 MMU and vmid index is used for stage2 MMU.

On 3A5000, vmid must be the same with vpid. On 3A6000 platform vmid
may separate from vpid. There are such advantages if separate vpid
is supported.
  1. One VM uses one vmid, vCPUs on the same VM can share the same vmid.
  2. If one vCPU switch between different physical CPU, old vmid can be
     still usefil if old vmid is not expired
  3. For remote tlb flush, only vmid need update and vpid need not
update.

Here add separate vmid feature support, vmid feature detecting method
is not implemented since it depends on HW implementation, detecting
method will be added when HW is ready.

---
Bibo Mao (5):
  LoongArch: KVM: Add vmid support for stage2 MMU
  LoongArch: KVM: Add separate vmid feature support
  LoongArch: KVM: implement vmid updating logic
  LoongArch: KVM: Add remote tlb flushing support
  LoongArch: KVM: Enable separate vmid feature

 arch/loongarch/include/asm/kvm_host.h  | 10 ++++
 arch/loongarch/include/asm/loongarch.h |  2 +
 arch/loongarch/kernel/asm-offsets.c    |  1 +
 arch/loongarch/kvm/main.c              | 76 ++++++++++++++++++++++++--
 arch/loongarch/kvm/mmu.c               | 17 ++++++
 arch/loongarch/kvm/switch.S            |  5 +-
 arch/loongarch/kvm/tlb.c               | 19 ++++++-
 arch/loongarch/kvm/vcpu.c              |  7 ++-
 8 files changed, 128 insertions(+), 9 deletions(-)


base-commit: 2d5404caa8c7bb5c4e0435f94b28834ae5456623
-- 
2.39.3




Copyright © 2024, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds









ApplySandwichStrip

pFad - (p)hone/(F)rame/(a)nonymizer/(d)eclutterfier!      Saves Data!


--- a PPN by Garber Painting Akron. With Image Size Reduction included!

Fetched URL: http://lwn.net/Articles/998053/

Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy