Michal Suchanek d1b70b
From 6df3877fc962c2bb3d0438633dfd24a185af6838 Mon Sep 17 00:00:00 2001
Michal Suchanek d1b70b
From: Paul Mackerras <paulus@ozlabs.org>
Michal Suchanek d1b70b
Date: Tue, 13 Feb 2018 15:45:21 +1100
Michal Suchanek d1b70b
Subject: [PATCH] KVM: PPC: Book3S: Fix compile error that occurs with some gcc
Michal Suchanek d1b70b
 versions
Michal Suchanek d1b70b
Michal Suchanek d1b70b
References: bsc#1061840
Michal Suchanek d1b70b
Patch-mainline: v4.16-rc5
Michal Suchanek d1b70b
Git-commit: 6df3877fc962c2bb3d0438633dfd24a185af6838
Michal Suchanek d1b70b
Michal Suchanek d1b70b
Some versions of gcc generate a warning that the variable "emulated"
Michal Suchanek d1b70b
may be used uninitialized in function kvmppc_handle_load128_by2x64().
Michal Suchanek d1b70b
It would be used uninitialized if kvmppc_handle_load128_by2x64 was
Michal Suchanek d1b70b
ever called with vcpu->arch.mmio_vmx_copy_nums == 0, but neither of
Michal Suchanek d1b70b
the callers ever do that, so there is no actual bug.  When gcc
Michal Suchanek d1b70b
generates a warning, it causes the build to fail because arch/powerpc
Michal Suchanek d1b70b
is compiled with -Werror.
Michal Suchanek d1b70b
Michal Suchanek d1b70b
This silences the warning by initializing "emulated" to EMULATE_DONE.
Michal Suchanek d1b70b
Michal Suchanek d1b70b
Fixes: 09f984961c13 ("KVM: PPC: Book3S: Add MMIO emulation for VMX instructions")
Michal Suchanek d1b70b
Reported-by: Michael Ellerman <mpe@ellerman.id.au>
Michal Suchanek d1b70b
Signed-off-by: Paul Mackerras <paulus@ozlabs.org>
Michal Suchanek d1b70b
Acked-by: Michal Suchanek <msuchanek@suse.de>
Michal Suchanek d1b70b
---
Michal Suchanek d1b70b
 arch/powerpc/kvm/powerpc.c | 2 +-
Michal Suchanek d1b70b
 1 file changed, 1 insertion(+), 1 deletion(-)
Michal Suchanek d1b70b
Michal Suchanek d1b70b
diff --git a/arch/powerpc/kvm/powerpc.c b/arch/powerpc/kvm/powerpc.c
Michal Suchanek d1b70b
index 0083142c2f84..52c205373986 100644
Michal Suchanek d1b70b
--- a/arch/powerpc/kvm/powerpc.c
Michal Suchanek d1b70b
+++ b/arch/powerpc/kvm/powerpc.c
Michal Suchanek d1b70b
@@ -1345,7 +1345,7 @@ static int kvmppc_emulate_mmio_vsx_loadstore(struct kvm_vcpu *vcpu,
Michal Suchanek d1b70b
 int kvmppc_handle_load128_by2x64(struct kvm_run *run, struct kvm_vcpu *vcpu,
Michal Suchanek d1b70b
 		unsigned int rt, int is_default_endian)
Michal Suchanek d1b70b
 {
Michal Suchanek d1b70b
-	enum emulation_result emulated;
Michal Suchanek d1b70b
+	enum emulation_result emulated = EMULATE_DONE;
Michal Suchanek d1b70b
 
Michal Suchanek d1b70b
 	while (vcpu->arch.mmio_vmx_copy_nums) {
Michal Suchanek d1b70b
 		emulated = __kvmppc_handle_load(run, vcpu, rt, 8,
Michal Suchanek d1b70b
-- 
Michal Suchanek d1b70b
2.13.7
Michal Suchanek d1b70b