Commit a43b80b7 authored by Maxim Levitsky's avatar Maxim Levitsky Committed by Paolo Bonzini

KVM: s390x: implement KVM_CAP_SET_GUEST_DEBUG2

Define KVM_GUESTDBG_VALID_MASK and use it to implement this capabiity.
Compile tested only.
Signed-off-by: default avatarMaxim Levitsky <mlevitsk@redhat.com>
Message-Id: <20210401135451.1004564-6-mlevitsk@redhat.com>
Signed-off-by: default avatarPaolo Bonzini <pbonzini@redhat.com>
parent fa18aca9
...@@ -701,6 +701,10 @@ struct kvm_hw_bp_info_arch { ...@@ -701,6 +701,10 @@ struct kvm_hw_bp_info_arch {
#define guestdbg_exit_pending(vcpu) (guestdbg_enabled(vcpu) && \ #define guestdbg_exit_pending(vcpu) (guestdbg_enabled(vcpu) && \
(vcpu->guest_debug & KVM_GUESTDBG_EXIT_PENDING)) (vcpu->guest_debug & KVM_GUESTDBG_EXIT_PENDING))
#define KVM_GUESTDBG_VALID_MASK \
(KVM_GUESTDBG_ENABLE | KVM_GUESTDBG_SINGLESTEP |\
KVM_GUESTDBG_USE_HW_BP | KVM_GUESTDBG_EXIT_PENDING)
struct kvm_guestdbg_info_arch { struct kvm_guestdbg_info_arch {
unsigned long cr0; unsigned long cr0;
unsigned long cr9; unsigned long cr9;
......
...@@ -550,6 +550,9 @@ int kvm_vm_ioctl_check_extension(struct kvm *kvm, long ext) ...@@ -550,6 +550,9 @@ int kvm_vm_ioctl_check_extension(struct kvm *kvm, long ext)
case KVM_CAP_S390_DIAG318: case KVM_CAP_S390_DIAG318:
r = 1; r = 1;
break; break;
case KVM_CAP_SET_GUEST_DEBUG2:
r = KVM_GUESTDBG_VALID_MASK;
break;
case KVM_CAP_S390_HPAGE_1M: case KVM_CAP_S390_HPAGE_1M:
r = 0; r = 0;
if (hpage && !kvm_is_ucontrol(kvm)) if (hpage && !kvm_is_ucontrol(kvm))
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment