[GIT PULL] LoongArch KVM changes for v6.12
From: Huacai Chen
Date: Fri Sep 13 2024 - 04:58:36 EST
The following changes since commit da3ea35007d0af457a0afc87e84fddaebc4e0b63:
Linux 6.11-rc7 (2024-09-08 14:50:28 -0700)
are available in the Git repository at:
git://git.kernel.org/pub/scm/linux/kernel/git/chenhuacai/linux-loongson.git tags/loongarch-kvm-6.12
for you to fetch changes up to 3abb708ec0be25da16a1ee9f1ab5cbc93f3256f3:
LoongArch: KVM: Implement function kvm_para_has_feature() (2024-09-12 22:56:14 +0800)
----------------------------------------------------------------
LoongArch KVM changes for v6.12
1. Revert qspinlock to test-and-set simple lock on VM.
2. Add Loongson Binary Translation extension support.
3. Add PMU support for guest.
4. Enable paravirt feature control from VMM.
5. Implement function kvm_para_has_feature().
----------------------------------------------------------------
Bibo Mao (6):
LoongArch: Revert qspinlock to test-and-set simple lock on VM
LoongArch: KVM: Add VM feature detection function
LoongArch: KVM: Add Binary Translation extension support
LoongArch: KVM: Add vm migration support for LBT registers
LoongArch: KVM: Enable paravirt feature control from VMM
LoongArch: KVM: Implement function kvm_para_has_feature()
Song Gao (1):
LoongArch: KVM: Add PMU support for guest
arch/loongarch/include/asm/Kbuild | 1 -
arch/loongarch/include/asm/kvm_csr.h | 6 +
arch/loongarch/include/asm/kvm_host.h | 37 +++-
arch/loongarch/include/asm/kvm_para.h | 12 +
arch/loongarch/include/asm/kvm_vcpu.h | 11 +
arch/loongarch/include/asm/loongarch.h | 11 +-
arch/loongarch/include/asm/paravirt.h | 7 +
arch/loongarch/include/asm/qspinlock.h | 41 ++++
arch/loongarch/include/uapi/asm/Kbuild | 2 -
arch/loongarch/include/uapi/asm/kvm.h | 20 ++
arch/loongarch/include/uapi/asm/kvm_para.h | 21 ++
arch/loongarch/kernel/paravirt.c | 47 ++--
arch/loongarch/kernel/setup.c | 2 +
arch/loongarch/kernel/smp.c | 4 +-
arch/loongarch/kvm/exit.c | 46 ++--
arch/loongarch/kvm/vcpu.c | 340 ++++++++++++++++++++++++++++-
arch/loongarch/kvm/vm.c | 69 +++++-
17 files changed, 616 insertions(+), 61 deletions(-)
create mode 100644 arch/loongarch/include/asm/qspinlock.h
create mode 100644 arch/loongarch/include/uapi/asm/kvm_para.h