[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <87ft7klg38.fsf@vitty.brq.redhat.com>
Date: Mon, 14 Sep 2020 14:04:27 +0200
From: Vitaly Kuznetsov <vkuznets@...hat.com>
To: Joerg Roedel <joro@...tes.org>
Cc: Sean Christopherson <sean.j.christopherson@...el.com>,
Wanpeng Li <wanpengli@...cent.com>,
Jim Mattson <jmattson@...gle.com>, x86@...nel.org,
kvm@...r.kernel.org, linux-kernel@...r.kernel.org,
Joerg Roedel <jroedel@...e.de>,
Dan Carpenter <dan.carpenter@...cle.com>,
Borislav Petkov <bp@...en8.de>,
Paolo Bonzini <pbonzini@...hat.com>,
Colin King <colin.king@...onical.com>
Subject: Re: [PATCH -tip] KVM: SVM: nested: Initialize on-stack pointers in svm_set_nested_state()
Joerg Roedel <joro@...tes.org> writes:
> From: Joerg Roedel <jroedel@...e.de>
>
> The save and ctl pointers need to be initialized to NULL because there
> is a way through the function in which there is no memory allocated
> for the pointers but where they are freed in the end.
>
> This involves the 'goto out_set_gif' before the memory for the
> pointers is allocated.
>
> Reported-by: Dan Carpenter <dan.carpenter@...cle.com>
> Fixes: 6ccbd29ade0d ("KVM: SVM: nested: Don't allocate VMCB structures on stack")
> Signed-off-by: Joerg Roedel <jroedel@...e.de>
> ---
> arch/x86/kvm/svm/nested.c | 4 ++--
> 1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/arch/x86/kvm/svm/nested.c b/arch/x86/kvm/svm/nested.c
> index 598a769f1961..72a3d6f87107 100644
> --- a/arch/x86/kvm/svm/nested.c
> +++ b/arch/x86/kvm/svm/nested.c
> @@ -1062,8 +1062,8 @@ static int svm_set_nested_state(struct kvm_vcpu *vcpu,
> struct vmcb *hsave = svm->nested.hsave;
> struct vmcb __user *user_vmcb = (struct vmcb __user *)
> &user_kvm_nested_state->data.svm[0];
> - struct vmcb_control_area *ctl;
> - struct vmcb_save_area *save;
> + struct vmcb_control_area *ctl = NULL;
> + struct vmcb_save_area *save = NULL;
> int ret;
> u32 cr0;
Hi Joerg,
this was previously reported by Colin:
https://lore.kernel.org/kvm/20200911110730.24238-1-colin.king@canonical.com/
the fix itself looks good, however, I had an alternative suggestion on how
to fix this:
https://lore.kernel.org/kvm/87o8mclei1.fsf@vitty.brq.redhat.com/
--
Vitaly
Powered by blists - more mailing lists