On 1/20/22 10:25 AM, Roger Pau Monne wrote:
There's no point in disabling x2APIC mode when running as a Xen HVM
guest, just enable it when available.

Signed-off-by: Roger Pau MonnĂ© <[email protected]>
---
Cc: Boris Ostrovsky <[email protected]>
Cc: Juergen Gross <[email protected]>
Cc: Stefano Stabellini <[email protected]>
Cc: Thomas Gleixner <[email protected]>
Cc: Ingo Molnar <[email protected]>
Cc: Borislav Petkov <[email protected]>
Cc: Dave Hansen <[email protected]>
Cc: [email protected]
Cc: "H. Peter Anvin" <[email protected]>
Cc: [email protected]
---
  arch/x86/xen/enlighten_hvm.c | 3 ++-
  1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/arch/x86/xen/enlighten_hvm.c b/arch/x86/xen/enlighten_hvm.c
index 42300941ec29..ab8171cbee23 100644
--- a/arch/x86/xen/enlighten_hvm.c
+++ b/arch/x86/xen/enlighten_hvm.c
@@ -9,6 +9,7 @@
  #include <xen/events.h>
  #include <xen/interface/memory.h>
+#include <asm/apic.h>
  #include <asm/cpu.h>
  #include <asm/smp.h>
  #include <asm/io_apic.h>
@@ -248,7 +249,7 @@ bool __init xen_hvm_need_lapic(void)
                return false;
        if (!xen_hvm_domain())
                return false;
-       if (xen_feature(XENFEAT_hvm_pirqs) && xen_have_vector_callback)
+       if (!x2apic_supported())
                return false;
        return true;
  }


Then it seems this whole routine can be reduced to just

        return x2apic_supported();

and then dropped altogether and x2apic_supported() moved to 
xen_x2apic_para_available(). Domain type checks here are not really needed 
since this can only be called on HVM guests.


-boris

Reply via email to