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