From mboxrd@z Thu Jan 1 00:00:00 1970 From: Avi Kivity Subject: Re: [PATCH] Fix sysenter migration issue on AMD CPUs Date: Sun, 23 Aug 2009 13:05:15 +0300 Message-ID: <4A91145B.5080504@redhat.com> References: <1250855924-13762-1-git-send-email-andre.przywara@amd.com> Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Cc: kvm@vger.kernel.org, nuitari-kvm@nuitari.net, thomas.besser@kit.edu To: Andre Przywara Return-path: Received: from mx1.redhat.com ([209.132.183.28]:23589 "EHLO mx1.redhat.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1755975AbZHWKFa (ORCPT ); Sun, 23 Aug 2009 06:05:30 -0400 In-Reply-To: <1250855924-13762-1-git-send-email-andre.przywara@amd.com> Sender: kvm-owner@vger.kernel.org List-ID: On 08/21/2009 02:58 PM, Andre Przywara wrote: > To enable cross-vendor migration we use VMCB external variables to hold > the full 64bit value of the SYSENTER MSRs, which get truncated to 32bit > on AMD hardware. Since we didn't intercept these MSRs, these > variables were only used in the emulation case, but were _always_ used > for migration purposes. This worked fine for cross-vendor migration in > compat mode, but did not work in pure legacy mode. > To fix this we always intercept the SYSENTER MSRs and store the values > both in the VMCB and the external variables. This works for all cases. > > Signed-off-by: Andre Przywara > --- > arch/x86/kvm/svm.c | 9 ++++----- > 1 files changed, 4 insertions(+), 5 deletions(-) > > Hi Avi, > > this should fix the problem seen by Stephane and Thomas this week. > Please revert 8b2f9d194288982d654c1afef491dfdf75ec1ba9 (your proposed fix, > which broke cross-vendor migration) and apply this patch afterwards. > It worked for me with both 32on32 and 32on64 migration both cross-vendor > and between two AMD machines. > Reverted and applied; thanks. -- error compiling committee.c: too many arguments to function