1
2
3
4
5
6
7
8
9
10
11
12
13#include "qemu-common.h"
14#include "hw/hw.h"
15#include "cpu.h"
16#include "sysemu/kvm.h"
17
18#ifndef CONFIG_USER_ONLY
19#include "hw/pci/msi.h"
20#endif
21
22KVMState *kvm_state;
23bool kvm_kernel_irqchip;
24bool kvm_async_interrupts_allowed;
25bool kvm_irqfds_allowed;
26bool kvm_msi_via_irqfd_allowed;
27bool kvm_gsi_routing_allowed;
28bool kvm_gsi_direct_mapping;
29bool kvm_allowed;
30bool kvm_readonly_mem_allowed;
31
32int kvm_init_vcpu(CPUState *cpu)
33{
34 return -ENOSYS;
35}
36
37int kvm_init(void)
38{
39 return -ENOSYS;
40}
41
42void kvm_flush_coalesced_mmio_buffer(void)
43{
44}
45
46void kvm_cpu_synchronize_state(CPUState *cpu)
47{
48}
49
50void kvm_cpu_synchronize_post_reset(CPUState *cpu)
51{
52}
53
54void kvm_cpu_synchronize_post_init(CPUState *cpu)
55{
56}
57
58int kvm_cpu_exec(CPUState *cpu)
59{
60 abort();
61}
62
63int kvm_has_sync_mmu(void)
64{
65 return 0;
66}
67
68int kvm_has_many_ioeventfds(void)
69{
70 return 0;
71}
72
73int kvm_has_pit_state2(void)
74{
75 return 0;
76}
77
78void kvm_setup_guest_memory(void *start, size_t size)
79{
80}
81
82int kvm_update_guest_debug(CPUState *cpu, unsigned long reinject_trap)
83{
84 return -ENOSYS;
85}
86
87int kvm_insert_breakpoint(CPUState *cpu, target_ulong addr,
88 target_ulong len, int type)
89{
90 return -EINVAL;
91}
92
93int kvm_remove_breakpoint(CPUState *cpu, target_ulong addr,
94 target_ulong len, int type)
95{
96 return -EINVAL;
97}
98
99void kvm_remove_all_breakpoints(CPUState *cpu)
100{
101}
102
103#ifndef _WIN32
104int kvm_set_signal_mask(CPUState *cpu, const sigset_t *sigset)
105{
106 abort();
107}
108#endif
109
110int kvm_on_sigbus_vcpu(CPUState *cpu, int code, void *addr)
111{
112 return 1;
113}
114
115int kvm_on_sigbus(int code, void *addr)
116{
117 return 1;
118}
119
120#ifndef CONFIG_USER_ONLY
121int kvm_irqchip_add_msi_route(KVMState *s, MSIMessage msg)
122{
123 return -ENOSYS;
124}
125
126void kvm_init_irq_routing(KVMState *s)
127{
128}
129
130void kvm_irqchip_release_virq(KVMState *s, int virq)
131{
132}
133
134int kvm_irqchip_update_msi_route(KVMState *s, int virq, MSIMessage msg)
135{
136 return -ENOSYS;
137}
138
139int kvm_irqchip_add_irqfd_notifier(KVMState *s, EventNotifier *n,
140 EventNotifier *rn, int virq)
141{
142 return -ENOSYS;
143}
144
145int kvm_irqchip_remove_irqfd_notifier(KVMState *s, EventNotifier *n, int virq)
146{
147 return -ENOSYS;
148}
149#endif
150