diff options
author | Daniel Henrique Barboza <dbarboza@ventanamicro.com> | 2023-12-05 14:45:07 -0300 |
---|---|---|
committer | Anup Patel <anup@brainfault.org> | 2023-12-29 12:31:53 +0530 |
commit | 197bd237b67268651ac544e8fedbe1fd275d41e0 (patch) | |
tree | 3926cb8567c8d024a326a7d46ddc8dbbd8d04de0 | |
parent | bdf6aa328f137e184b0fce607fd585354c3742f1 (diff) | |
download | linux-stable-197bd237b67268651ac544e8fedbe1fd275d41e0.tar.gz linux-stable-197bd237b67268651ac544e8fedbe1fd275d41e0.tar.bz2 linux-stable-197bd237b67268651ac544e8fedbe1fd275d41e0.zip |
RISC-V: KVM: set 'vlenb' in kvm_riscv_vcpu_alloc_vector_context()
'vlenb', added to riscv_v_ext_state by commit c35f3aa34509 ("RISC-V:
vector: export VLENB csr in __sc_riscv_v_state"), isn't being
initialized in guest_context. If we export 'vlenb' as a KVM CSR,
something we want to do in the next patch, it'll always return 0.
Set 'vlenb' to riscv_v_size/32.
Signed-off-by: Daniel Henrique Barboza <dbarboza@ventanamicro.com>
Reviewed-by: Anup Patel <anup@brainfault.org>
Signed-off-by: Anup Patel <anup@brainfault.org>
-rw-r--r-- | arch/riscv/kvm/vcpu_vector.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/arch/riscv/kvm/vcpu_vector.c b/arch/riscv/kvm/vcpu_vector.c index b339a2682f25..530e49c588d6 100644 --- a/arch/riscv/kvm/vcpu_vector.c +++ b/arch/riscv/kvm/vcpu_vector.c @@ -76,6 +76,7 @@ int kvm_riscv_vcpu_alloc_vector_context(struct kvm_vcpu *vcpu, cntx->vector.datap = kmalloc(riscv_v_vsize, GFP_KERNEL); if (!cntx->vector.datap) return -ENOMEM; + cntx->vector.vlenb = riscv_v_vsize / 32; vcpu->arch.host_context.vector.datap = kzalloc(riscv_v_vsize, GFP_KERNEL); if (!vcpu->arch.host_context.vector.datap) |