#include "cpus.h"
+#ifdef SIGRTMIN
+#define SIG_IPI (SIGRTMIN+4)
+#else
+#define SIG_IPI SIGUSR1
+#endif
+
static CPUState *cur_cpu;
static CPUState *next_cpu;
return qemu_event_init();
}
+void qemu_main_loop_start(void)
+{
+}
+
void qemu_init_vcpu(void *_env)
{
CPUState *env = _env;
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) {
#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);
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);
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;
static int shutdown_requested;
static int powerdown_requested;
int debug_requested;
-static int vmstop_requested;
+int vmstop_requested;
int qemu_shutdown_requested(void)
{
{
int r;
-#ifdef CONFIG_IOTHREAD
- qemu_system_ready = 1;
- qemu_cond_broadcast(&qemu_system_cond);
-#endif
+ qemu_main_loop_start();
for (;;) {
do {