Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 4aebd0e9 authored by Ladi Prosek's avatar Ladi Prosek Committed by Paolo Bonzini
Browse files

KVM: SVM: introduce disable_nmi_singlestep helper



Just moving the code to a new helper in preparation for following
commits.

Signed-off-by: default avatarLadi Prosek <lprosek@redhat.com>
Signed-off-by: default avatarPaolo Bonzini <pbonzini@redhat.com>
parent 525df861
Loading
Loading
Loading
Loading
+9 −4
Original line number Original line Diff line number Diff line
@@ -963,6 +963,14 @@ static void svm_disable_lbrv(struct vcpu_svm *svm)
	set_msr_interception(msrpm, MSR_IA32_LASTINTTOIP, 0, 0);
	set_msr_interception(msrpm, MSR_IA32_LASTINTTOIP, 0, 0);
}
}


static void disable_nmi_singlestep(struct vcpu_svm *svm)
{
	svm->nmi_singlestep = false;
	if (!(svm->vcpu.guest_debug & KVM_GUESTDBG_SINGLESTEP))
		svm->vmcb->save.rflags &=
			~(X86_EFLAGS_TF | X86_EFLAGS_RF);
}

/* Note:
/* Note:
 * This hash table is used to map VM_ID to a struct kvm_arch,
 * This hash table is used to map VM_ID to a struct kvm_arch,
 * when handling AMD IOMMU GALOG notification to schedule in
 * when handling AMD IOMMU GALOG notification to schedule in
@@ -2111,10 +2119,7 @@ static int db_interception(struct vcpu_svm *svm)
	}
	}


	if (svm->nmi_singlestep) {
	if (svm->nmi_singlestep) {
		svm->nmi_singlestep = false;
		disable_nmi_singlestep(svm);
		if (!(svm->vcpu.guest_debug & KVM_GUESTDBG_SINGLESTEP))
			svm->vmcb->save.rflags &=
				~(X86_EFLAGS_TF | X86_EFLAGS_RF);
	}
	}


	if (svm->vcpu.guest_debug &
	if (svm->vcpu.guest_debug &