Message ID | 20220623082428.28038-3-roger.pau@citrix.com (mailing list archive) |
---|---|
State | Superseded |
Headers | show |
Series | x86/irq: switch x2APIC default destination mode | expand |
On 23.06.2022 10:24, Roger Pau Monne wrote: > 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. When using more than 8 CPUs. You also don't mention the downside (higher IPI send effort) at all. Jan
diff --git a/docs/misc/xen-command-line.pandoc b/docs/misc/xen-command-line.pandoc index a92b7d228c..952874c4f4 100644 --- a/docs/misc/xen-command-line.pandoc +++ b/docs/misc/xen-command-line.pandoc @@ -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) diff --git a/xen/arch/x86/Kconfig b/xen/arch/x86/Kconfig index f560dc13f4..74bfb37db4 100644 --- a/xen/arch/x86/Kconfig +++ b/xen/arch/x86/Kconfig @@ -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"
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 | 5 ++--- xen/arch/x86/Kconfig | 4 ++-- 2 files changed, 4 insertions(+), 5 deletions(-)