RISC-V: KVM: use EBUSY when !vcpu->arch.ran_atleast_once
authorDaniel Henrique Barboza <dbarboza@ventanamicro.com>
Thu, 3 Aug 2023 16:32:57 +0000 (13:32 -0300)
committerAnup Patel <anup@brainfault.org>
Tue, 8 Aug 2023 11:55:51 +0000 (17:25 +0530)
vcpu_set_reg_config() and vcpu_set_reg_isa_ext() is throwing an
EOPNOTSUPP error when !vcpu->arch.ran_atleast_once. In similar cases
we're throwing an EBUSY error, like in mvendorid/marchid/mimpid
set_reg().

EOPNOTSUPP has a conotation of finality. EBUSY is more adequate in this
case since its a condition/error related to the vcpu lifecycle.

Change these EOPNOTSUPP instances to EBUSY.

Suggested-by: Andrew Jones <ajones@ventanamicro.com>
Signed-off-by: Daniel Henrique Barboza <dbarboza@ventanamicro.com>
Reviewed-by: Andrew Jones <ajones@ventanamicro.com>
Signed-off-by: Anup Patel <anup@brainfault.org>
arch/riscv/kvm/vcpu_onereg.c

index e06256dd8d246d27fbdd2c7881c4f2f9ce7e9708..971a2eb83180b6c4a89730bfd5549b2986de4d8d 100644 (file)
@@ -212,7 +212,7 @@ static int kvm_riscv_vcpu_set_reg_config(struct kvm_vcpu *vcpu,
                        vcpu->arch.isa[0] = reg_val;
                        kvm_riscv_vcpu_fp_reset(vcpu);
                } else {
-                       return -EOPNOTSUPP;
+                       return -EBUSY;
                }
                break;
        case KVM_REG_RISCV_CONFIG_REG(zicbom_block_size):
@@ -484,7 +484,7 @@ static int riscv_vcpu_set_isa_ext_single(struct kvm_vcpu *vcpu,
                        return -EINVAL;
                kvm_riscv_vcpu_fp_reset(vcpu);
        } else {
-               return -EOPNOTSUPP;
+               return -EBUSY;
        }
 
        return 0;