If shadow paging has been compiled out short circuit the creation of HVM guests that attempt to use shadow paging at arch_sanitise_domain_config(). There's no need to further build the domain when creation is doomed to fail later on.
Signed-off-by: Roger Pau Monné <[email protected]> --- xen/arch/x86/domain.c | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/xen/arch/x86/domain.c b/xen/arch/x86/domain.c index 8b2f33f1a06c..8eb1509782ef 100644 --- a/xen/arch/x86/domain.c +++ b/xen/arch/x86/domain.c @@ -627,6 +627,12 @@ int arch_sanitise_domain_config(struct xen_domctl_createdomain *config) return -EINVAL; } + if ( hvm && !hap && !IS_ENABLED(CONFIG_SHADOW_PAGING) ) + { + dprintk(XENLOG_INFO, "Shadow paging requested but not available\n"); + return -EINVAL; + } + if ( !hvm ) /* * It is only meaningful for XEN_DOMCTL_CDF_oos_off to be clear -- 2.51.0
