From 3f7b4ecfab99ed904e12083f60e80efa99db7770 Mon Sep 17 00:00:00 2001 From: Andrew Cooper Date: Fri, 14 Sep 2018 11:30:33 +0200 Subject: [PATCH] x86/spec-ctrl: adjust backport of b76ec3946b Refreshing XenServer's patchqueue has shown that I missed this adjustment in the upstream backports of the final version of the XSA-273 fixes. The code does work in 4.7 and earlier, but only because the eventual value of (opt_pv_l1tf & OPT_PV_L1TF_DOMx) is within range of a char. Signed-off-by: Andrew Cooper --- xen/include/asm-x86/shadow.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/xen/include/asm-x86/shadow.h b/xen/include/asm-x86/shadow.h index de09e8168d..c720008425 100644 --- a/xen/include/asm-x86/shadow.h +++ b/xen/include/asm-x86/shadow.h @@ -215,8 +215,8 @@ void pv_l1tf_tasklet(unsigned long data); static inline void pv_l1tf_domain_init(struct domain *d) { d->arch.pv_domain.check_l1tf = - opt_pv_l1tf & (is_hardware_domain(d) - ? OPT_PV_L1TF_DOM0 : OPT_PV_L1TF_DOMU); + !!(opt_pv_l1tf & (is_hardware_domain(d) + ? OPT_PV_L1TF_DOM0 : OPT_PV_L1TF_DOMU)); #ifdef CONFIG_SHADOW_PAGING tasklet_init(&d->arch.paging.shadow.pv_l1tf_tasklet,