From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1NKHIa-0007Vd-01 for qemu-devel@nongnu.org; Mon, 14 Dec 2009 15:13:40 -0500 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1NKHIV-0007SC-AP for qemu-devel@nongnu.org; Mon, 14 Dec 2009 15:13:39 -0500 Received: from [199.232.76.173] (port=52440 helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1NKHIV-0007S8-2x for qemu-devel@nongnu.org; Mon, 14 Dec 2009 15:13:35 -0500 Received: from mx1.redhat.com ([209.132.183.28]:59102) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1NKHIU-0006eA-PT for qemu-devel@nongnu.org; Mon, 14 Dec 2009 15:13:35 -0500 Date: Mon, 14 Dec 2009 22:10:49 +0200 From: "Michael S. Tsirkin" Subject: Re: [Qemu-devel] cpuid problem in upstream qemu with kvm Message-ID: <20091214201049.GD6150@redhat.com> References: <20091214193541.GA6150@redhat.com> <4B269596.1050103@codemonkey.ws> <20091214194432.GC6150@redhat.com> <4B2698A9.9090107@codemonkey.ws> <20091214200002.GA27769@redhat.com> <4B2699BB.1090302@codemonkey.ws> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <4B2699BB.1090302@codemonkey.ws> List-Id: qemu-devel.nongnu.org List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Anthony Liguori Cc: qemu-devel@nongnu.org, Gleb Natapov , avi@redhat.com On Mon, Dec 14, 2009 at 02:02:03PM -0600, Anthony Liguori wrote: > Gleb Natapov wrote: >>> I thought KVM emulates the syscall instruction? I swear I've seen >>> patches for that. >>> >>> >> It is. Starting from 2.6.32. >> > > Okay, so this is a performance vs. migration compatibility issue then? > > BTW, couldn't we just not advertise syscall in cpuid? That should fix > it too without sacrificing migration compatibility. We get a slight > slowdown on AMD hosts but that's probably minor compared to the cost of > using emulated syscall on Intel hosts. > > Regards, > > Anthony Liguori This might help 32 bit guests, but not guests with 64 bit kernel and 32 bit userspace (my case) because all 64 bit CPUs advertise syscall bit in cpuid. Thus 64 bit guests do not seem to even bother checking this bit: AMD + 64 bit -> syscall. -- MST