Commit 6f725c139ae975646c44ace77bf796318a5783da
Committed by
Anthony Liguori
1 parent
609f2fab
provide tests for pit in kernel and irqchip in kernel
KVM can have an in-kernel pit or irqchip. While we don't implement it yet, having a way for test for it (that always returns zero) will allow us to reuse code in qemu-kvm that tests for it. Signed-off-by: Glauber Costa <glommer@redhat.com> Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
Showing
2 changed files
with
16 additions
and
0 deletions
kvm-all.c
... | ... | @@ -63,6 +63,8 @@ struct KVMState |
63 | 63 | #ifdef KVM_CAP_SET_GUEST_DEBUG |
64 | 64 | struct kvm_sw_breakpoint_head kvm_sw_breakpoints; |
65 | 65 | #endif |
66 | + int irqchip_in_kernel; | |
67 | + int pit_in_kernel; | |
66 | 68 | }; |
67 | 69 | |
68 | 70 | static KVMState *kvm_state; |
... | ... | @@ -162,6 +164,17 @@ static void on_vcpu(CPUState *env, void (*func)(void *data), void *data) |
162 | 164 | abort(); |
163 | 165 | } |
164 | 166 | |
167 | +int kvm_irqchip_in_kernel(void) | |
168 | +{ | |
169 | + return kvm_state->irqchip_in_kernel; | |
170 | +} | |
171 | + | |
172 | +int kvm_pit_in_kernel(void) | |
173 | +{ | |
174 | + return kvm_state->pit_in_kernel; | |
175 | +} | |
176 | + | |
177 | + | |
165 | 178 | int kvm_init_vcpu(CPUState *env) |
166 | 179 | { |
167 | 180 | KVMState *s = kvm_state; | ... | ... |
kvm.h
... | ... | @@ -60,6 +60,9 @@ int kvm_remove_breakpoint(CPUState *current_env, target_ulong addr, |
60 | 60 | void kvm_remove_all_breakpoints(CPUState *current_env); |
61 | 61 | int kvm_update_guest_debug(CPUState *env, unsigned long reinject_trap); |
62 | 62 | |
63 | +int kvm_pit_in_kernel(void); | |
64 | +int kvm_irqchip_in_kernel(void); | |
65 | + | |
63 | 66 | /* internal API */ |
64 | 67 | |
65 | 68 | struct KVMState; | ... | ... |