qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] [PATCH] compile x86_64 on i386


From: Anthony Liguori
Subject: Re: [Qemu-devel] [PATCH] compile x86_64 on i386
Date: Wed, 05 Nov 2008 13:59:53 -0600
User-agent: Thunderbird 2.0.0.17 (X11/20080925)

Glauber Costa wrote:
On Wed, Nov 5, 2008 at 5:13 PM, Anthony Liguori <address@hidden> wrote:
Glauber Costa wrote:
This patch allows qemu-system-x86_64 to be compiled on a i386 host.

For this to properly work, you need to fix the FIXMEs in target-i386/kvm.c
that are around lm_capable_check.  Basically, if you're on a 32-bit kernel,
but a 64-bit capable processor, you need to mask long mode from the guest or
it may try to use it.

Yes, but 32-bit kernels work fine (since they not even try)
So they are orthogonal.

Well, I don't buy your argument, but we have the same problem with qemu-system-i386 anyway so I guess your patch makes things no worse.

I've committed something slightly different that I hope will extend more easily. Thanks.

Regards,

Anthony Liguori

Regards,

Anthony Liguori

---
 configure |   17 ++++++++++-------
 1 files changed, 10 insertions(+), 7 deletions(-)

diff --git a/configure b/configure
index 067c3c5..65f0c74 100755
--- a/configure
+++ b/configure
@@ -1447,13 +1447,16 @@ interp_prefix1=`echo "$interp_prefix" | sed
"s/%M/$target_cpu/g"`
 echo "#define CONFIG_QEMU_PREFIX \"$interp_prefix1\"" >> $config_h
 gdb_xml_files=""
 -# FIXME allow i386 to build on x86_64 and vice versa
-if test "$kvm" = "yes" -a "$target_cpu" != "$cpu" ; then
-  kvm="no"
-fi
-# Disable KVM for linux-user
-if test "$kvm" = "yes" -a "$target_softmmu" = "no" ; then
-  kvm="no"
+if test "$kvm" = "yes";
+then
+  # Disable KVM for linux-user
+  if test "$target_softmmu" = "no";
+  then
+     kvm="no"
+  elif test "$target_cpu" != "$cpu" && test ! "$cpu" = "i386" -a
 "$target_cpu" = "x86_64" ;
+  then
+        kvm="no"
+  fi
 fi
  case "$target_cpu" in











reply via email to

[Prev in Thread] Current Thread [Next in Thread]