From bde21672a161a5cc379bab28a4d3cd3fa00de678 Mon Sep 17 00:00:00 2001 From: Roger Pau Monne Date: Fri, 4 Sep 2015 13:06:48 +0200 Subject: [PATCH] xen/x86: allow disabling all emulated devices inside of Xen MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit Only allow enabling or disabling all the emulated devices inside of Xen, right now Xen doesn't support enabling specific emulated devices only. Signed-off-by: Roger Pau Monné Reviewed-by: Andrew Cooper Cc: Jan Beulich Cc: Andrew Cooper --- Changes since v7: - Rework if condition. Changes since v5: - Add Andrew Cooper Reviewed-by. --- xen/arch/x86/domain.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/xen/arch/x86/domain.c b/xen/arch/x86/domain.c index 3f9e5d22ce..971c88dc18 100644 --- a/xen/arch/x86/domain.c +++ b/xen/arch/x86/domain.c @@ -532,8 +532,8 @@ int arch_domain_create(struct domain *d, unsigned int domcr_flags, d->domain_id, config->emulation_flags); return -EINVAL; } - if ( is_hvm_domain(d) ? (config->emulation_flags != XEN_X86_EMU_ALL) - : (config->emulation_flags != 0) ) + if ( config->emulation_flags != 0 && + (!is_hvm_domain(d) || config->emulation_flags != XEN_X86_EMU_ALL) ) { printk(XENLOG_G_ERR "d%d: Xen does not allow %s domain creation " "with the current selection of emulators: %#x\n", -- 2.39.5