mirror of
https://github.com/hardkernel/linux.git
synced 2026-06-08 11:50:43 +09:00
Revert "BACKPORT: FROMGIT: KVM: arm64: Move SVE state mapping at HYP to finalize-time"
This reverts commit 2e8036db25.
Bug: 233587962
Signed-off-by: Will Deacon <willdeacon@google.com>
Change-Id: Ife6db5d19ba51bcd07345962e3b3a7b8a789eb05
This commit is contained in:
@@ -34,6 +34,17 @@ int kvm_arch_vcpu_run_map_fp(struct kvm_vcpu *vcpu)
|
||||
if (ret)
|
||||
goto error;
|
||||
|
||||
if (vcpu->arch.sve_state) {
|
||||
void *sve_end;
|
||||
|
||||
sve_end = vcpu->arch.sve_state + vcpu_sve_state_size(vcpu);
|
||||
|
||||
ret = create_hyp_mappings(vcpu->arch.sve_state, sve_end,
|
||||
PAGE_HYP);
|
||||
if (ret)
|
||||
goto error;
|
||||
}
|
||||
|
||||
vcpu->arch.host_fpsimd_state = kern_hyp_va(fpsimd);
|
||||
error:
|
||||
return ret;
|
||||
|
||||
@@ -94,8 +94,6 @@ static int kvm_vcpu_finalize_sve(struct kvm_vcpu *vcpu)
|
||||
{
|
||||
void *buf;
|
||||
unsigned int vl;
|
||||
size_t reg_sz;
|
||||
int ret;
|
||||
|
||||
vl = vcpu->arch.sve_max_vl;
|
||||
|
||||
@@ -108,17 +106,10 @@ static int kvm_vcpu_finalize_sve(struct kvm_vcpu *vcpu)
|
||||
vl > SVE_VL_ARCH_MAX))
|
||||
return -EIO;
|
||||
|
||||
reg_sz = vcpu_sve_state_size(vcpu);
|
||||
buf = kzalloc(reg_sz, GFP_KERNEL_ACCOUNT);
|
||||
buf = kzalloc(SVE_SIG_REGS_SIZE(sve_vq_from_vl(vl)), GFP_KERNEL_ACCOUNT);
|
||||
if (!buf)
|
||||
return -ENOMEM;
|
||||
|
||||
ret = create_hyp_mappings(buf, buf + reg_sz, PAGE_HYP);
|
||||
if (ret) {
|
||||
kfree(buf);
|
||||
return ret;
|
||||
}
|
||||
|
||||
vcpu->arch.sve_state = buf;
|
||||
vcpu->arch.flags |= KVM_ARM64_VCPU_SVE_FINALIZED;
|
||||
return 0;
|
||||
|
||||
Reference in New Issue
Block a user