1#ifndef QEMU_CPUS_H
2#define QEMU_CPUS_H
3
4#include "qemu/timer.h"
5
6/* cpus.c */
7bool qemu_in_vcpu_thread(void);
8void qemu_init_cpu_loop(void);
9void resume_all_vcpus(void);
10void pause_all_vcpus(void);
11void cpu_stop_current(void);
12void cpu_ticks_init(void);
13
14void configure_icount(QemuOpts *opts, Error **errp);
15extern int use_icount;
16extern int icount_align_option;
17
18/* drift information for info jit command */
19extern int64_t max_delay;
20extern int64_t max_advance;
21void dump_drift_info(void);
22
23/* Unblock cpu */
24void qemu_cpu_kick_self(void);
25void qemu_timer_notify_cb(void *opaque, QEMUClockType type);
26
27void cpu_synchronize_all_states(void);
28void cpu_synchronize_all_post_reset(void);
29void cpu_synchronize_all_post_init(void);
30void cpu_synchronize_all_pre_loadvm(void);
31
32void qtest_clock_warp(int64_t dest);
33
34#ifndef CONFIG_USER_ONLY
35/* vl.c */
36/* *-user doesn't have configurable SMP topology */
37extern int smp_cores;
38extern int smp_threads;
39#endif
40
41void list_cpus(const char *optarg);
42
43void qemu_tcg_configure(QemuOpts *opts, Error **errp);
44
45#endif
46