Re: [PATCH v2 1/3] KVM: SVM: Refactor AVIC hardware setup logic into helper function
From: Suthikulpanit, Suravee
Date:  Tue Dec 07 2021 - 08:01:23 EST
Hi Maxim,
On 12/3/2021 2:39 PM, Maxim Levitsky wrote:
On Thu, 2021-12-02 at 17:58 -0600, Suravee Suthikulpanit wrote:
To prepare for upcoming AVIC changes. There is no functional change.
Signed-off-by: Suravee Suthikulpanit<suravee.suthikulpanit@xxxxxxx>
---
  arch/x86/kvm/svm/avic.c | 10 ++++++++++
  arch/x86/kvm/svm/svm.c  |  8 +-------
  arch/x86/kvm/svm/svm.h  |  1 +
  3 files changed, 12 insertions(+), 7 deletions(-)
diff --git a/arch/x86/kvm/svm/avic.c b/arch/x86/kvm/svm/avic.c
index 8052d92069e0..6aca1682f4b7 100644
--- a/arch/x86/kvm/svm/avic.c
+++ b/arch/x86/kvm/svm/avic.c
@@ -1011,3 +1011,13 @@ void svm_vcpu_unblocking(struct kvm_vcpu *vcpu)
  		kvm_vcpu_update_apicv(vcpu);
  	avic_set_running(vcpu, true);
  }
+
+bool avic_hardware_setup(bool avic, bool npt)
+{
+	if (!avic || !npt || !boot_cpu_has(X86_FEATURE_AVIC))
+		return false;
Nitpick: Why to pass these as local variables? npt_enabled for example is
used in many places directly.
Good point. I didn't see that it's already declared as extern in the svm.h. I'll update this in V3.
Thanks,
Suravee