aboutsummaryrefslogtreecommitdiff
path: root/cpus.c
diff options
context:
space:
mode:
authorAndreas Färber <afaerber@suse.de>2012-05-02 23:42:26 +0200
committerAndreas Färber <afaerber@suse.de>2012-10-31 01:02:44 +0100
commita1fcaa73b1be5d8f0c6682d0f8d268f6e3194ead (patch)
tree778b7e536317f4959c01c3940ead9e9f23246a2d /cpus.c
parent2fa45344a92444439c081cad2342ffc048c381ad (diff)
downloadqemu-a1fcaa73b1be5d8f0c6682d0f8d268f6e3194ead.zip
qemu-a1fcaa73b1be5d8f0c6682d0f8d268f6e3194ead.tar.gz
qemu-a1fcaa73b1be5d8f0c6682d0f8d268f6e3194ead.tar.bz2
cpus: Pass CPUState to cpu_can_run()
CPUArchState is no longer needed there. Also change its return type to bool. Signed-off-by: Andreas Färber <afaerber@suse.de>
Diffstat (limited to 'cpus.c')
-rw-r--r--cpus.c14
1 files changed, 6 insertions, 8 deletions
diff --git a/cpus.c b/cpus.c
index 0721a96..45877ee 100644
--- a/cpus.c
+++ b/cpus.c
@@ -448,17 +448,15 @@ static void do_vm_stop(RunState state)
}
}
-static int cpu_can_run(CPUArchState *env)
+static bool cpu_can_run(CPUState *cpu)
{
- CPUState *cpu = ENV_GET_CPU(env);
-
if (cpu->stop) {
- return 0;
+ return false;
}
if (cpu->stopped || !runstate_is_running()) {
- return 0;
+ return false;
}
- return 1;
+ return true;
}
static void cpu_handle_guest_debug(CPUArchState *env)
@@ -756,7 +754,7 @@ static void *qemu_kvm_cpu_thread_fn(void *arg)
qemu_cond_signal(&qemu_cpu_cond);
while (1) {
- if (cpu_can_run(env)) {
+ if (cpu_can_run(cpu)) {
r = kvm_cpu_exec(env);
if (r == EXCP_DEBUG) {
cpu_handle_guest_debug(env);
@@ -1153,7 +1151,7 @@ static void tcg_exec_all(void)
qemu_clock_enable(vm_clock,
(env->singlestep_enabled & SSTEP_NOTIMER) == 0);
- if (cpu_can_run(env)) {
+ if (cpu_can_run(cpu)) {
r = tcg_cpu_exec(env);
if (r == EXCP_DEBUG) {
cpu_handle_guest_debug(env);