]> xenbits.xensource.com Git - people/royger/xen.git/commitdiff
x86/x2apic: use physical destination mode by default
authorRoger Pau Monne <roger.pau@citrix.com>
Wed, 22 Jun 2022 12:27:55 +0000 (14:27 +0200)
committerRoger Pau Monne <roger.pau@citrix.com>
Wed, 22 Jun 2022 12:42:39 +0000 (14:42 +0200)
Using cluster mode by default greatly limits the amount of vectors
available, as then vector space is shared amongst all the CPUs in the
logical cluster.

This can lead to vector shortage issues on boxes with not a huge
amount of CPUs but with a non-trivial amount of devices, there are
reports of boxes with 32 CPUs (2 logical clusters, and thus only 414
dynamic vectors) that run out of vectors and fail to setup interrupts
for dom0.

This could be considered as a regression when switching from xAPIC
mode, as when using xAPIC only physical mode is supported.

Switch default Kconfig selection to use x2APIC physical mode.

Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
docs/misc/xen-command-line.pandoc
xen/arch/x86/Kconfig

index a92b7d228cae3163f213c4920a774b157f4de93c..952874c4f43a3c57dc01b88a551d1329941c9a70 100644 (file)
@@ -2646,11 +2646,10 @@ Permit use of x2apic setup for SMP environments.
 ### x2apic_phys (x86)
 > `= <boolean>`
 
-> Default: `true` if **FADT** mandates physical mode or if interrupt remapping
->          is not available, `false` otherwise.
+> Default: `false` if **FADT** mandates cluster mode, `true` otherwise.
 
 In the case that x2apic is in use, this option switches between physical and
-clustered mode.  The default, given no hint from the **FADT**, is cluster
+clustered mode.  The default, given no hint from the **FADT**, is physical
 mode.
 
 ### xenheap_megabytes (arm32)
index f560dc13f430cdcff4e56962b4037f05e7bbf574..74bfb37db4f38713e6a01ded729810631f87c68d 100644 (file)
@@ -228,11 +228,11 @@ endchoice
 
 choice
        prompt "x2APIC default destination mode"
-       default X2APIC_LOGICAL
+       default X2APIC_PHYS
        ---help---
          Specify default destination mode for x2APIC.
 
-         If unsure, choose "Logical".
+         If unsure, choose "Physical".
 
 config X2APIC_LOGICAL
        bool "Logical mode"