]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
RISC-V: KVM: Allow Svvptc extension for Guest/VM
authorQuan Zhou <zhouquan@iscas.ac.cn>
Mon, 2 Dec 2024 03:21:38 +0000 (11:21 +0800)
committerAnup Patel <anup@brainfault.org>
Mon, 30 Dec 2024 08:31:01 +0000 (14:01 +0530)
Extend the KVM ISA extension ONE_REG interface to allow KVM user space
to detect and enable Svvptc extension for Guest/VM.

Signed-off-by: Quan Zhou <zhouquan@iscas.ac.cn>
Reviewed-by: Andrew Jones <ajones@ventanamicro.com>
Link: https://lore.kernel.org/r/133509ffe5783b62cf95e8f675cc3e327bee402e.1732854096.git.zhouquan@iscas.ac.cn
Signed-off-by: Anup Patel <anup@brainfault.org>
arch/riscv/include/uapi/asm/kvm.h
arch/riscv/kvm/vcpu_onereg.c

index 24e22f6e3a477259dfc25f34e1953640200d2822..e789c20eadc9bfe0e9215ea39eb36fe785ebec11 100644 (file)
@@ -179,6 +179,7 @@ enum KVM_RISCV_ISA_EXT_ID {
        KVM_RISCV_ISA_EXT_SSNPM,
        KVM_RISCV_ISA_EXT_SVADE,
        KVM_RISCV_ISA_EXT_SVADU,
+       KVM_RISCV_ISA_EXT_SVVPTC,
        KVM_RISCV_ISA_EXT_MAX,
 };
 
index 753f66c8b70a72e76210075b4e07849741f614d4..b843ea236370847f83caf80d83642715872745ca 100644 (file)
@@ -46,6 +46,7 @@ static const unsigned long kvm_isa_ext_arr[] = {
        KVM_ISA_EXT_ARR(SVINVAL),
        KVM_ISA_EXT_ARR(SVNAPOT),
        KVM_ISA_EXT_ARR(SVPBMT),
+       KVM_ISA_EXT_ARR(SVVPTC),
        KVM_ISA_EXT_ARR(ZACAS),
        KVM_ISA_EXT_ARR(ZAWRS),
        KVM_ISA_EXT_ARR(ZBA),
@@ -145,6 +146,7 @@ static bool kvm_riscv_vcpu_isa_disable_allowed(unsigned long ext)
        case KVM_RISCV_ISA_EXT_SSTC:
        case KVM_RISCV_ISA_EXT_SVINVAL:
        case KVM_RISCV_ISA_EXT_SVNAPOT:
+       case KVM_RISCV_ISA_EXT_SVVPTC:
        case KVM_RISCV_ISA_EXT_ZACAS:
        case KVM_RISCV_ISA_EXT_ZAWRS:
        case KVM_RISCV_ISA_EXT_ZBA: