From mboxrd@z Thu Jan 1 00:00:00 1970 From: Gleb Natapov Subject: Re: Issue with 64-bit code execution with kvm enabled Date: Sun, 14 Nov 2010 08:59:51 +0200 Message-ID: <20101114065951.GC7948@redhat.com> References: Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Cc: kvm@vger.kernel.org To: Adhyas Avasthi Return-path: Received: from mx1.redhat.com ([209.132.183.28]:12631 "EHLO mx1.redhat.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1753587Ab0KNG7x (ORCPT ); Sun, 14 Nov 2010 01:59:53 -0500 Content-Disposition: inline In-Reply-To: Sender: kvm-owner@vger.kernel.org List-ID: On Sat, Nov 13, 2010 at 03:37:14PM -0800, Adhyas Avasthi wrote: > I am trying to boot a 64-bit GRUB2 based EFI Boot Loader on top of > OVMF based EFI BIOS (also 64 bit) for x86_64. My host is Ubuntu 10.04 > x86_64 and I am running qemu-kvm-0.13.0 with self-built > kvm-kmod-2.6.32.17 for my kernel version which is 2.6.32-24 (I used > the default Ubuntu KVM and qemu versions with same issue earlier). My > host PC is Lenovo T410 with Intel Core i5 > > GRUB2 is built with gcc and apparently, EFI has a different calling > convention so GRUB2 has an assembly wrapper file that changes the > parameter as per desired calling convention. The problem is that if I > start the loader with kvm disabled, everything goes fine and their > wrapper instructions do the right thing as well. If I enable kvm, > however, I get an x64 exception (as below): > > !!!! X64 Exception Type - 000000000000000D !!!! > ExceptionData - 0000000000000000 > RIP - 000000001FFA95FA, RFL - 0000000000010202 Can you disassemble code around the RIP? Also provide ftrace of kvm execution during the failure. -- Gleb.