|
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [xen master] firmware/shim: UNSUPPORTED=n
commit b509d4a688d80e802ff580990288ef5e17859df6
Author: Jan Beulich <jbeulich@xxxxxxxx>
AuthorDate: Thu May 27 14:39:33 2021 +0200
Commit: Jan Beulich <jbeulich@xxxxxxxx>
CommitDate: Thu May 27 14:39:33 2021 +0200
firmware/shim: UNSUPPORTED=n
We shouldn't default to include any unsupported code in the shim. Mark
the setting as off, replacing the ARGO specification. This points out
anomalies with the scheduler configuration: Unsupported schedulers
better don't default to Y in release builds (like is already the case
for ARINC653). Without at least the SCHED_NULL adjustments, the shim
would suddenly build with RTDS as its default scheduler.
As a result, the SCHED_NULL setting can also be dropped from defconfig.
Clearly with the shim defaulting to it, SCHED_NULL must be supported at
least there.
Signed-off-by: Jan Beulich <jbeulich@xxxxxxxx>
Acked-by: Roger Pau Monné <roger.pau@xxxxxxxxxx>
Reviewed-by: Dario Faggioli <dfaggioli@xxxxxxxx>
---
SUPPORT.md | 3 ++-
xen/arch/x86/configs/pvshim_defconfig | 3 +--
xen/common/sched/Kconfig | 5 +++--
3 files changed, 6 insertions(+), 5 deletions(-)
diff --git a/SUPPORT.md b/SUPPORT.md
index d0d4fc6f4f..7a53635c9e 100644
--- a/SUPPORT.md
+++ b/SUPPORT.md
@@ -351,9 +351,10 @@ Currently only single-vcpu domains are supported.
A very simple, very static scheduling policy
that always schedules the same vCPU(s) on the same pCPU(s).
It is designed for maximum determinism and minimum overhead
-on embedded platforms.
+on embedded platforms and the x86 PV shim.
Status: Experimental
+ Status, x86/shim: Supported
### NUMA scheduler affinity
diff --git a/xen/arch/x86/configs/pvshim_defconfig
b/xen/arch/x86/configs/pvshim_defconfig
index cdf5776610..787376df5a 100644
--- a/xen/arch/x86/configs/pvshim_defconfig
+++ b/xen/arch/x86/configs/pvshim_defconfig
@@ -6,7 +6,6 @@ CONFIG_PV_SHIM=y
CONFIG_PV_SHIM_EXCLUSIVE=y
CONFIG_NR_CPUS=32
CONFIG_EXPERT=y
-CONFIG_SCHED_NULL=y
# Disable features not used by the PV shim
# CONFIG_XEN_SHSTK is not set
# CONFIG_GRANT_TABLE is not set
@@ -15,7 +14,7 @@ CONFIG_SCHED_NULL=y
# CONFIG_KEXEC is not set
# CONFIG_XENOPROF is not set
# CONFIG_XSM is not set
-# CONFIG_ARGO is not set
+# CONFIG_UNSUPPORTED is not set
# CONFIG_SCHED_CREDIT is not set
# CONFIG_SCHED_CREDIT2 is not set
# CONFIG_SCHED_RTDS is not set
diff --git a/xen/common/sched/Kconfig b/xen/common/sched/Kconfig
index 94c9e20139..3d9f9214b8 100644
--- a/xen/common/sched/Kconfig
+++ b/xen/common/sched/Kconfig
@@ -16,7 +16,7 @@ config SCHED_CREDIT2
config SCHED_RTDS
bool "RTDS scheduler support (UNSUPPORTED)" if UNSUPPORTED
- default y
+ default DEBUG
---help---
The RTDS scheduler is a soft and firm real-time scheduler for
multicore, targeted for embedded, automotive, graphics and gaming
@@ -31,7 +31,7 @@ config SCHED_ARINC653
config SCHED_NULL
bool "Null scheduler support (UNSUPPORTED)" if UNSUPPORTED
- default y
+ default PV_SHIM || DEBUG
---help---
The null scheduler is a static, zero overhead scheduler,
for when there always are less vCPUs than pCPUs, typically
@@ -39,6 +39,7 @@ config SCHED_NULL
choice
prompt "Default Scheduler?"
+ default SCHED_NULL_DEFAULT if PV_SHIM_EXCLUSIVE
default SCHED_CREDIT2_DEFAULT
config SCHED_CREDIT_DEFAULT
--
generated by git-patchbot for /home/xen/git/xen.git#master
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |