From: Joerg Roedel <[email protected]>

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 <[email protected]>
Fixes: 6ccbd29ade0d ("KVM: SVM: nested: Don't allocate VMCB structures on 
stack")
Signed-off-by: Joerg Roedel <[email protected]>
---
 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;
 
-- 
2.28.0

Reply via email to