From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1O1NVy-0004q1-Vm for qemu-devel@nongnu.org; Mon, 12 Apr 2010 13:33:39 -0400 Received: from [140.186.70.92] (port=38922 helo=eggs.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1O1NVw-0004oZ-Gy for qemu-devel@nongnu.org; Mon, 12 Apr 2010 13:33:38 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.69) (envelope-from ) id 1O1NVr-0001Pm-Iw for qemu-devel@nongnu.org; Mon, 12 Apr 2010 13:33:36 -0400 Received: from mail-pv0-f173.google.com ([74.125.83.173]:33256) by eggs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1O1NVp-0001PF-U7 for qemu-devel@nongnu.org; Mon, 12 Apr 2010 13:33:31 -0400 Received: by pvd12 with SMTP id 12so2270032pvd.4 for ; Mon, 12 Apr 2010 10:33:27 -0700 (PDT) MIME-Version: 1.0 In-Reply-To: <20100412164947.GA4976@amt.cnet> References: <4BBC4CC6.7060705@bandsman.co.uk> <20100408012729.GA8872@amt.cnet> <20100412164947.GA4976@amt.cnet> Date: Mon, 12 Apr 2010 20:33:27 +0300 Message-ID: Subject: Re: [Qemu-devel] Latest Git fails to compile in cpus.c From: Blue Swirl Content-Type: text/plain; charset=UTF-8 List-Id: qemu-devel.nongnu.org List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Marcelo Tosatti Cc: Nigel Horne , qemu-devel@nongnu.org On 4/12/10, Marcelo Tosatti wrote: > On Sun, Apr 11, 2010 at 07:29:04PM +0300, Blue Swirl wrote: > > On 4/8/10, Marcelo Tosatti wrote: > > > On Wed, Apr 07, 2010 at 09:02:53PM +0300, Blue Swirl wrote: > > > > On 4/7/10, malc wrote: > > > > > On Wed, 7 Apr 2010, Nigel Horne wrote: > > > > > > > > > > > ./configure --enable-linux-aio --enable-io-thread --enable-kvm: > > > > > > > > > > > > .... > > > > > > > > > > > > /home/njh/src/qemu/cpus.c:360: error: ?SIG_IPI? undeclared (first use in this > > > > > > function) > > > > > > /home/njh/src/qemu/cpus.c:360: error: (Each undeclared identifier is reported > > > > > > only once > > > > > > > > > > > > > > > And even if one defines that things will still not work due to: > > > > > .../cpus.c:657: error: 'vmstop_requested' undeclared (first use in this function) > > > > > > > > > > IOW --enable-io-thread is broken as it is now. > > > > > > > > Didn't anybody test the patch I sent: > > > > http://lists.gnu.org/archive/html/qemu-devel/2010-04/msg00051.html > > > > > > > > > > > > > The broadcast must be signalled after the machine is fully initialized. > > > > I made a new version which does not change the call sequence. > > > ACK Thanks for the ACK, applied. > > From cad37052c7dd2a7a572614b62d76d9f2e8a2a406 Mon Sep 17 00:00:00 2001 > > From: Blue Swirl > > Date: Sun, 11 Apr 2010 16:26:54 +0000 > > Subject: [PATCH] Fix build when configured with --enable-io-thread > > > > Signed-off-by: Blue Swirl > > --- > > cpus.c | 16 ++++++++++++++++ > > cpus.h | 4 +++- > > vl.c | 13 ++----------- > > 3 files changed, 21 insertions(+), 12 deletions(-) > > > > diff --git a/cpus.c b/cpus.c > > index 0debe77..8450ee4 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; > > > > @@ -226,6 +232,10 @@ int qemu_init_main_loop(void) > > return qemu_event_init(); > > } > > > > +void qemu_main_loop_start(void) > > +{ > > +} > > + > > void qemu_init_vcpu(void *_env) > > { > > CPUState *env = _env; > > @@ -318,6 +328,12 @@ int qemu_init_main_loop(void) > > return 0; > > } > > > > +void qemu_main_loop_start(void) > > +{ > > + qemu_system_ready = 1; > > + qemu_cond_broadcast(&qemu_system_cond); > > +} > > + > > static void qemu_wait_io_event_common(CPUState *env) > > { > > if (env->stop) { > > diff --git a/cpus.h b/cpus.h > > index 67c9a3b..4ebad3a 100644 > > --- a/cpus.h > > +++ b/cpus.h > > @@ -1,8 +1,9 @@ > > #ifndef QEMU_CPUS_H > > #define QEMU_CPUS_H > > > > -/* cpu-common.c */ > > +/* cpus.c */ > > int qemu_init_main_loop(void); > > +void qemu_main_loop_start(void); > > void resume_all_vcpus(void); > > void pause_all_vcpus(void); > > > > @@ -10,6 +11,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 ea79ac4..4fb55b8 100644 > > --- a/vl.c > > +++ b/vl.c > > @@ -244,12 +244,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; > > @@ -1717,7 +1711,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) > > { > > @@ -1955,10 +1949,7 @@ static void main_loop(void) > > { > > int r; > > > > -#ifdef CONFIG_IOTHREAD > > - qemu_system_ready = 1; > > - qemu_cond_broadcast(&qemu_system_cond); > > -#endif > > + qemu_main_loop_start(); > > > > for (;;) { > > do { > > -- > > 1.5.6.5 > > > >