WARNING - OLD ARCHIVES

This is an archived copy of the Xen.org mailing list, which we have preserved to ensure that existing links to archives are not broken. The live archive, which contains the latest emails, can be found at http://lists.xen.org/
   
 
 
Xen 
 
Home Products Support Community News
 
   
 

xen-devel

[Xen-devel] Re: [Qemu-devel] [PATCH V10 05/15] xen: Add xenfv machine

To: anthony.perard@xxxxxxxxxx
Subject: [Xen-devel] Re: [Qemu-devel] [PATCH V10 05/15] xen: Add xenfv machine
From: Anthony Liguori <anthony@xxxxxxxxxxxxx>
Date: Thu, 24 Feb 2011 11:31:18 -0600
Cc: Xen Devel <xen-devel@xxxxxxxxxxxxxxxxxxx>, QEMU-devel <qemu-devel@xxxxxxxxxx>, Stefano Stabellini <stefano.stabellini@xxxxxxxxxxxxx>
Delivery-date: Thu, 24 Feb 2011 09:36:03 -0800
Envelope-to: www-data@xxxxxxxxxxxxxxxxxxx
In-reply-to: <1296658172-16609-6-git-send-email-anthony.perard@xxxxxxxxxx>
List-help: <mailto:xen-devel-request@lists.xensource.com?subject=help>
List-id: Xen developer discussion <xen-devel.lists.xensource.com>
List-post: <mailto:xen-devel@lists.xensource.com>
List-subscribe: <http://lists.xensource.com/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=unsubscribe>
References: <1296658172-16609-1-git-send-email-anthony.perard@xxxxxxxxxx> <1296658172-16609-6-git-send-email-anthony.perard@xxxxxxxxxx>
Sender: xen-devel-bounces@xxxxxxxxxxxxxxxxxxx
User-agent: Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.9.1.15) Gecko/20101027 Lightning/1.0b1 Thunderbird/3.0.10
On 02/02/2011 08:49 AM, anthony.perard@xxxxxxxxxx wrote:
From: Anthony PERARD<anthony.perard@xxxxxxxxxx>

Introduce the Xen FV (Fully Virtualized) machine to Qemu, some more Xen
specific call will be added in further patches.

Signed-off-by: Anthony PERARD<anthony.perard@xxxxxxxxxx>
---
  hw/pc.c      |   19 +++++++++++++++++--
  hw/pc_piix.c |   21 ++++++++++++++++++++-
  hw/xen.h     |    4 ++++
  3 files changed, 41 insertions(+), 3 deletions(-)

diff --git a/hw/pc.c b/hw/pc.c
index 4dfdc0b..ab9d365 100644
--- a/hw/pc.c
+++ b/hw/pc.c
@@ -41,6 +41,7 @@
  #include "sysemu.h"
  #include "blockdev.h"
  #include "ui/qemu-spice.h"
+#include "xen.h"

  /* output Bochs bios info messages */
  //#define DEBUG_BIOS
@@ -906,7 +907,11 @@ static void pc_cpu_reset(void *opaque)
      CPUState *env = opaque;

      cpu_reset(env);
-    env->halted = !cpu_is_bsp(env);
+    if (!xen_enabled()) {
+        env->halted = !cpu_is_bsp(env);
+    } else {
+        env->halted = 1;
+    }
  }

  static CPUState *pc_new_cpu(const char *cpu_model)
@@ -940,7 +945,12 @@ void pc_cpus_init(const char *cpu_model)
  #endif
      }

-    for(i = 0; i<  smp_cpus; i++) {
+    if (!xen_enabled()) {
+        for(i = 0; i<  smp_cpus; i++) {
+            pc_new_cpu(cpu_model);
+        }
+    } else {
+        /* Xen require only one Qemu VCPU */
          pc_new_cpu(cpu_model);
      }
  }
@@ -968,6 +978,11 @@ void pc_memory_init(ram_addr_t ram_size,
      *above_4g_mem_size_p = above_4g_mem_size;
      *below_4g_mem_size_p = below_4g_mem_size;

+    if (xen_enabled()) {
+        /* Nothing to do for Xen */
+        return;
+    }
+
  #if TARGET_PHYS_ADDR_BITS == 32
      if (above_4g_mem_size>  0) {
          hw_error("To much RAM for 32-bit physical address");
diff --git a/hw/pc_piix.c b/hw/pc_piix.c
index 7b74473..0ab8907 100644
--- a/hw/pc_piix.c
+++ b/hw/pc_piix.c
@@ -36,6 +36,10 @@
  #include "sysbus.h"
  #include "arch_init.h"
  #include "blockdev.h"
+#include "xen.h"
+#ifdef CONFIG_XEN
+#  include "xen/hvm/hvm_info_table.h"
+#endif

Admittedly a nit, but isn't this a system header?

Regards,

Anthony Liguori

_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel

<Prev in Thread] Current Thread [Next in Thread>