kvm: i386: require KVM_CAP_DEBUGREGS

This was introduced in KVM in Linux 2.6.35, we can require it unconditionally.

Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
This commit is contained in:
Paolo Bonzini 2023-10-17 13:15:11 +02:00
parent 4b2991666c
commit f57a4dd311
4 changed files with 1 additions and 19 deletions

View File

@ -2528,10 +2528,6 @@ static int kvm_init(MachineState *ms)
s->robust_singlestep = s->robust_singlestep =
kvm_check_extension(s, KVM_CAP_X86_ROBUST_SINGLESTEP); kvm_check_extension(s, KVM_CAP_X86_ROBUST_SINGLESTEP);
#ifdef KVM_CAP_DEBUGREGS
s->debugregs = kvm_check_extension(s, KVM_CAP_DEBUGREGS);
#endif
s->max_nested_state_len = kvm_check_extension(s, KVM_CAP_NESTED_STATE); s->max_nested_state_len = kvm_check_extension(s, KVM_CAP_NESTED_STATE);
s->irq_set_ioctl = KVM_IRQ_LINE; s->irq_set_ioctl = KVM_IRQ_LINE;
@ -3152,11 +3148,6 @@ int kvm_has_robust_singlestep(void)
return kvm_state->robust_singlestep; return kvm_state->robust_singlestep;
} }
int kvm_has_debugregs(void)
{
return kvm_state->debugregs;
}
int kvm_max_nested_state_length(void) int kvm_max_nested_state_length(void)
{ {
return kvm_state->max_nested_state_len; return kvm_state->max_nested_state_len;

View File

@ -193,7 +193,6 @@ unsigned int kvm_get_free_memslots(void);
bool kvm_has_sync_mmu(void); bool kvm_has_sync_mmu(void);
int kvm_has_vcpu_events(void); int kvm_has_vcpu_events(void);
int kvm_has_robust_singlestep(void); int kvm_has_robust_singlestep(void);
int kvm_has_debugregs(void);
int kvm_max_nested_state_length(void); int kvm_max_nested_state_length(void);
int kvm_has_gsi_routing(void); int kvm_has_gsi_routing(void);

View File

@ -79,7 +79,6 @@ struct KVMState
bool coalesced_flush_in_progress; bool coalesced_flush_in_progress;
int vcpu_events; int vcpu_events;
int robust_singlestep; int robust_singlestep;
int debugregs;
#ifdef KVM_CAP_SET_GUEST_DEBUG #ifdef KVM_CAP_SET_GUEST_DEBUG
QTAILQ_HEAD(, kvm_sw_breakpoint) kvm_sw_breakpoints; QTAILQ_HEAD(, kvm_sw_breakpoint) kvm_sw_breakpoints;
#endif #endif

View File

@ -93,6 +93,7 @@ const KVMCapabilityInfo kvm_arch_required_capabilities[] = {
KVM_CAP_INFO(MP_STATE), KVM_CAP_INFO(MP_STATE),
KVM_CAP_INFO(SIGNAL_MSI), KVM_CAP_INFO(SIGNAL_MSI),
KVM_CAP_INFO(IRQ_ROUTING), KVM_CAP_INFO(IRQ_ROUTING),
KVM_CAP_INFO(DEBUGREGS),
KVM_CAP_LAST_INFO KVM_CAP_LAST_INFO
}; };
@ -4601,10 +4602,6 @@ static int kvm_put_debugregs(X86CPU *cpu)
struct kvm_debugregs dbgregs; struct kvm_debugregs dbgregs;
int i; int i;
if (!kvm_has_debugregs()) {
return 0;
}
memset(&dbgregs, 0, sizeof(dbgregs)); memset(&dbgregs, 0, sizeof(dbgregs));
for (i = 0; i < 4; i++) { for (i = 0; i < 4; i++) {
dbgregs.db[i] = env->dr[i]; dbgregs.db[i] = env->dr[i];
@ -4622,10 +4619,6 @@ static int kvm_get_debugregs(X86CPU *cpu)
struct kvm_debugregs dbgregs; struct kvm_debugregs dbgregs;
int i, ret; int i, ret;
if (!kvm_has_debugregs()) {
return 0;
}
ret = kvm_vcpu_ioctl(CPU(cpu), KVM_GET_DEBUGREGS, &dbgregs); ret = kvm_vcpu_ioctl(CPU(cpu), KVM_GET_DEBUGREGS, &dbgregs);
if (ret < 0) { if (ret < 0) {
return ret; return ret;