]> www.infradead.org Git - users/willy/xarray.git/commitdiff
RISC-V: KVM: Allow Zimop extension for Guest/VM
authorClément Léger <cleger@rivosinc.com>
Wed, 19 Jun 2024 11:35:14 +0000 (13:35 +0200)
committerPalmer Dabbelt <palmer@rivosinc.com>
Wed, 26 Jun 2024 14:54:48 +0000 (07:54 -0700)
Extend the KVM ISA extension ONE_REG interface to allow KVM user space
to detect and enable Zimop extension for Guest/VM.

Signed-off-by: Clément Léger <cleger@rivosinc.com>
Reviewed-by: Anup Patel <anup@brainfault.org>
Acked-by: Anup Patel <anup@brainfault.org>
Link: https://lore.kernel.org/r/20240619113529.676940-5-cleger@rivosinc.com
Signed-off-by: Palmer Dabbelt <palmer@rivosinc.com>
arch/riscv/include/uapi/asm/kvm.h
arch/riscv/kvm/vcpu_onereg.c

index e878e7cc39784a537b65ff7e6a97e44d74d14b01..db482ef0ae1eecc6cbd2f3b0f66f2d5acb091adf 100644 (file)
@@ -168,6 +168,7 @@ enum KVM_RISCV_ISA_EXT_ID {
        KVM_RISCV_ISA_EXT_ZTSO,
        KVM_RISCV_ISA_EXT_ZACAS,
        KVM_RISCV_ISA_EXT_SSCOFPMF,
+       KVM_RISCV_ISA_EXT_ZIMOP,
        KVM_RISCV_ISA_EXT_MAX,
 };
 
index c676275ea0a017617f3f6d766c66302479e4dc45..09f0aa92a4dadc0eac5dc702d13d267c3e79d590 100644 (file)
@@ -61,6 +61,7 @@ static const unsigned long kvm_isa_ext_arr[] = {
        KVM_ISA_EXT_ARR(ZIHINTNTL),
        KVM_ISA_EXT_ARR(ZIHINTPAUSE),
        KVM_ISA_EXT_ARR(ZIHPM),
+       KVM_ISA_EXT_ARR(ZIMOP),
        KVM_ISA_EXT_ARR(ZKND),
        KVM_ISA_EXT_ARR(ZKNE),
        KVM_ISA_EXT_ARR(ZKNH),
@@ -143,6 +144,7 @@ static bool kvm_riscv_vcpu_isa_disable_allowed(unsigned long ext)
        case KVM_RISCV_ISA_EXT_ZIHINTNTL:
        case KVM_RISCV_ISA_EXT_ZIHINTPAUSE:
        case KVM_RISCV_ISA_EXT_ZIHPM:
+       case KVM_RISCV_ISA_EXT_ZIMOP:
        case KVM_RISCV_ISA_EXT_ZKND:
        case KVM_RISCV_ISA_EXT_ZKNE:
        case KVM_RISCV_ISA_EXT_ZKNH: