Patchwork Re: Build failure of Git HEAD

login
register
mail settings
Submitter Blue Swirl
Date April 1, 2010, 6:37 p.m.
Message ID <k2of43fc5581004011137lc1384107gfaa7502769bcecff@mail.gmail.com>
Download mbox | patch
Permalink /patch/49234/
State New
Headers show

Comments

Blue Swirl - April 1, 2010, 6:37 p.m.
On 4/1/10, Nigel Horne <njh@bandsman.co.uk> wrote:
>
>
> > just for the record: a build of QEMU from HEAD with
> > '--enable-io-thread' fails. In "vl.c" "qemu_system_ready" is used but
> > not declared any longer.
> >
> >
>  I noticed this yesterday evening.  The thing is that qemu_system_ready is
> defined in cpus.c, but it's a static variable.

The attached patch fixes build. But I don't know if moving
 qemu_system_ready = 1; qemu_cond_broadcast(); a bit earlier is safe.

Patch

From 7c54fa959cdece6dc3fe8a3cabac5a783e4f1094 Mon Sep 17 00:00:00 2001
From: Blue Swirl <blauwirbel@gmail.com>
Date: Thu, 1 Apr 2010 18:33:23 +0000
Subject: [PATCH] Fix build when configured with --enable-io-thread

Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
---
 cpus.c |    9 +++++++++
 cpus.h |    1 +
 vl.c   |   13 +------------
 3 files changed, 11 insertions(+), 12 deletions(-)

diff --git a/cpus.c b/cpus.c
index a2e0642..09f3ebe 100644
--- a/cpus.c
+++ b/cpus.c
@@ -33,6 +33,12 @@ 
 
 #include "cpus.h"
 
+#ifdef SIGRTMIN
+#define SIG_IPI (SIGRTMIN+4)
+#else
+#define SIG_IPI SIGUSR1
+#endif
+
 static CPUState *cur_cpu;
 static CPUState *next_cpu;
 
@@ -305,6 +311,9 @@  int qemu_init_main_loop(void)
 {
     int ret;
 
+    qemu_system_ready = 1;
+    qemu_cond_broadcast(&qemu_system_cond);
+
     ret = qemu_event_init();
     if (ret)
         return ret;
diff --git a/cpus.h b/cpus.h
index 67c9a3b..e72084b 100644
--- a/cpus.h
+++ b/cpus.h
@@ -10,6 +10,7 @@  void pause_all_vcpus(void);
 extern int smp_cores;
 extern int smp_threads;
 extern int debug_requested;
+extern int vmstop_requested;
 void vm_state_notify(int running, int reason);
 bool tcg_cpu_exec(void);
 void set_numa_modes(void);
diff --git a/vl.c b/vl.c
index 6768cf1..03fccbf 100644
--- a/vl.c
+++ b/vl.c
@@ -245,12 +245,6 @@  int kvm_allowed = 0;
 uint32_t xen_domid;
 enum xen_mode xen_mode = XEN_EMULATE;
 
-#ifdef SIGRTMIN
-#define SIG_IPI (SIGRTMIN+4)
-#else
-#define SIG_IPI SIGUSR1
-#endif
-
 static int default_serial = 1;
 static int default_parallel = 1;
 static int default_virtcon = 1;
@@ -1781,7 +1775,7 @@  static int reset_requested;
 static int shutdown_requested;
 static int powerdown_requested;
 int debug_requested;
-static int vmstop_requested;
+int vmstop_requested;
 
 int qemu_shutdown_requested(void)
 {
@@ -2019,11 +2013,6 @@  static void main_loop(void)
 {
     int r;
 
-#ifdef CONFIG_IOTHREAD
-    qemu_system_ready = 1;
-    qemu_cond_broadcast(&qemu_system_cond);
-#endif
-
     for (;;) {
         do {
             bool nonblocking = false;
-- 
1.5.6.5