[PATCH][next] KVM: SVM: nested: fix free of uninitialized pointers save and ctl

From: Colin King
Date: Fri Sep 11 2020 - 07:08:14 EST

From: Colin Ian King <colin.king@xxxxxxxxxxxxx>

Currently the error exit path to outt_set_gif will kfree on uninitialized
pointers save and ctl. Fix this by ensuring these pointers are
inintialized to NULL to avoid garbage pointer freeing.

Addresses-Coverity: ("Uninitialized pointer read")
Fixes: 6ccbd29ade0d ("KVM: SVM: nested: Don't allocate VMCB structures on stack")
Signed-off-by: Colin Ian King <colin.king@xxxxxxxxxxxxx>
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 28036629abf8..2b15f49f9e5a 100644
--- a/arch/x86/kvm/svm/nested.c
+++ b/arch/x86/kvm/svm/nested.c
@@ -1060,8 +1060,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 *)
- 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;