Re: [PATCH RFC v7 40/64] KVM: SVM: Add KVM_SEV_SNP_LAUNCH_FINISH command

From: Sabin Rapan
Date: Wed Jan 11 2023 - 08:33:05 EST




On 14.12.2022 21:40, Michael Roth wrote:
> +static int snp_launch_update_vmsa(struct kvm *kvm, struct kvm_sev_cmd *argp)
> +{
> + struct kvm_sev_info *sev = &to_kvm_svm(kvm)->sev_info;
> + struct sev_data_snp_launch_update data = {};
> + int i, ret;
> +
> + data.gctx_paddr = __psp_pa(sev->snp_context);
> + data.page_type = SNP_PAGE_TYPE_VMSA;
> +
> + for (i = 0; i < kvm->created_vcpus; i++) {

Should be replaced with kvm_for_each_vcpu() as it was done for
sev_launch_update_vmsa() in c36b16d29f3a ("KVM: SVM: Use online_vcpus,
not created_vcpus, to iterate over vCPUs").
Prevents accessing uninitialized data in struct vcpu_svm.

--
Sabin.



Amazon Development Center (Romania) S.R.L. registered office: 27A Sf. Lazar Street, UBC5, floor 2, Iasi, Iasi County, 700045, Romania. Registered in Romania. Registration number J22/2621/2005.