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>
This commit is contained in:
parent
609f2fabab
commit
6f725c139a
13
kvm-all.c
13
kvm-all.c
|
@ -63,6 +63,8 @@ struct KVMState
|
||||||
#ifdef KVM_CAP_SET_GUEST_DEBUG
|
#ifdef KVM_CAP_SET_GUEST_DEBUG
|
||||||
struct kvm_sw_breakpoint_head kvm_sw_breakpoints;
|
struct kvm_sw_breakpoint_head kvm_sw_breakpoints;
|
||||||
#endif
|
#endif
|
||||||
|
int irqchip_in_kernel;
|
||||||
|
int pit_in_kernel;
|
||||||
};
|
};
|
||||||
|
|
||||||
static KVMState *kvm_state;
|
static KVMState *kvm_state;
|
||||||
|
@ -162,6 +164,17 @@ static void on_vcpu(CPUState *env, void (*func)(void *data), void *data)
|
||||||
abort();
|
abort();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
int kvm_irqchip_in_kernel(void)
|
||||||
|
{
|
||||||
|
return kvm_state->irqchip_in_kernel;
|
||||||
|
}
|
||||||
|
|
||||||
|
int kvm_pit_in_kernel(void)
|
||||||
|
{
|
||||||
|
return kvm_state->pit_in_kernel;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
int kvm_init_vcpu(CPUState *env)
|
int kvm_init_vcpu(CPUState *env)
|
||||||
{
|
{
|
||||||
KVMState *s = kvm_state;
|
KVMState *s = kvm_state;
|
||||||
|
|
3
kvm.h
3
kvm.h
|
@ -60,6 +60,9 @@ int kvm_remove_breakpoint(CPUState *current_env, target_ulong addr,
|
||||||
void kvm_remove_all_breakpoints(CPUState *current_env);
|
void kvm_remove_all_breakpoints(CPUState *current_env);
|
||||||
int kvm_update_guest_debug(CPUState *env, unsigned long reinject_trap);
|
int kvm_update_guest_debug(CPUState *env, unsigned long reinject_trap);
|
||||||
|
|
||||||
|
int kvm_pit_in_kernel(void);
|
||||||
|
int kvm_irqchip_in_kernel(void);
|
||||||
|
|
||||||
/* internal API */
|
/* internal API */
|
||||||
|
|
||||||
struct KVMState;
|
struct KVMState;
|
||||||
|
|
Loading…
Reference in New Issue