On Thu, May 03, 2018 at 03:48:26PM +1000, Paul Mackerras wrote: > On Wed, Apr 25, 2018 at 07:54:36PM +0800, wei.guo.si...@gmail.com wrote: > > From: Simon Guo <wei.guo.si...@gmail.com> > > > > When KVM emulates VMX store, it will invoke kvmppc_get_vmx_data() to > > retrieve VMX reg val. kvmppc_get_vmx_data() will check mmio_host_swabbed > > to decide which double word of vr[] to be used. But the > > mmio_host_swabbed can be uninitiazed during VMX store procedure: > > > > kvmppc_emulate_loadstore > > \- kvmppc_handle_store128_by2x64 > > \- kvmppc_get_vmx_data > > > > This patch corrects this by using kvmppc_need_byteswap() to choose > > double word of vr[] and initialized mmio_host_swabbed to avoid invisble > > trouble. > > > > Signed-off-by: Simon Guo <wei.guo.si...@gmail.com> > > The patch is correct, but I think the patch description needs to say > that vcpu->arch.mmio_host_swabbed is not meant to be used at all for > emulation of store instructions, and this patch makes that true for > VMX stores. I will revise the commit message accordingly.
> > Paul. Thanks, - Simon