1
2
3
4
5
6
7
8
9
10
11
12
13#include "qemu/osdep.h"
14#include "sysemu/kvm.h"
15#include "hw/pci/msi.h"
16
17KVMState *kvm_state;
18bool kvm_kernel_irqchip;
19bool kvm_async_interrupts_allowed;
20bool kvm_eventfds_allowed;
21bool kvm_irqfds_allowed;
22bool kvm_resamplefds_allowed;
23bool kvm_msi_via_irqfd_allowed;
24bool kvm_gsi_routing_allowed;
25bool kvm_gsi_direct_mapping;
26bool kvm_allowed;
27bool kvm_readonly_mem_allowed;
28bool kvm_ioeventfd_any_length_allowed;
29bool kvm_msi_use_devid;
30
31void kvm_flush_coalesced_mmio_buffer(void)
32{
33}
34
35void kvm_cpu_synchronize_state(CPUState *cpu)
36{
37}
38
39bool kvm_has_sync_mmu(void)
40{
41 return false;
42}
43
44int kvm_has_many_ioeventfds(void)
45{
46 return 0;
47}
48
49int kvm_update_guest_debug(CPUState *cpu, unsigned long reinject_trap)
50{
51 return -ENOSYS;
52}
53
54int kvm_insert_breakpoint(CPUState *cpu, target_ulong addr,
55 target_ulong len, int type)
56{
57 return -EINVAL;
58}
59
60int kvm_remove_breakpoint(CPUState *cpu, target_ulong addr,
61 target_ulong len, int type)
62{
63 return -EINVAL;
64}
65
66void kvm_remove_all_breakpoints(CPUState *cpu)
67{
68}
69
70int kvm_on_sigbus_vcpu(CPUState *cpu, int code, void *addr)
71{
72 return 1;
73}
74
75int kvm_on_sigbus(int code, void *addr)
76{
77 return 1;
78}
79
80int kvm_irqchip_add_msi_route(KVMRouteChange *c, int vector, PCIDevice *dev)
81{
82 return -ENOSYS;
83}
84
85void kvm_init_irq_routing(KVMState *s)
86{
87}
88
89void kvm_irqchip_release_virq(KVMState *s, int virq)
90{
91}
92
93int kvm_irqchip_update_msi_route(KVMState *s, int virq, MSIMessage msg,
94 PCIDevice *dev)
95{
96 return -ENOSYS;
97}
98
99void kvm_irqchip_commit_routes(KVMState *s)
100{
101}
102
103void kvm_irqchip_add_change_notifier(Notifier *n)
104{
105}
106
107void kvm_irqchip_remove_change_notifier(Notifier *n)
108{
109}
110
111void kvm_irqchip_change_notify(void)
112{
113}
114
115int kvm_irqchip_add_adapter_route(KVMState *s, AdapterInfo *adapter)
116{
117 return -ENOSYS;
118}
119
120int kvm_irqchip_add_irqfd_notifier_gsi(KVMState *s, EventNotifier *n,
121 EventNotifier *rn, int virq)
122{
123 return -ENOSYS;
124}
125
126int kvm_irqchip_remove_irqfd_notifier_gsi(KVMState *s, EventNotifier *n,
127 int virq)
128{
129 return -ENOSYS;
130}
131
132bool kvm_has_free_slot(MachineState *ms)
133{
134 return false;
135}
136
137void kvm_init_cpu_signals(CPUState *cpu)
138{
139 abort();
140}
141
142bool kvm_arm_supports_user_irq(void)
143{
144 return false;
145}
146
147bool kvm_dirty_ring_enabled(void)
148{
149 return false;
150}
151
152uint32_t kvm_dirty_ring_size(void)
153{
154 return 0;
155}
156