Mailing List Archive

[xen staging] x86: use is_pv_64bit_domain() to avoid double evaluate_nospec()
commit a49d1087e2c0cd940c9b93ded29c576bbae292f5
Author: Jan Beulich <jbeulich@suse.com>
AuthorDate: Mon Apr 19 15:29:06 2021 +0200
Commit: Jan Beulich <jbeulich@suse.com>
CommitDate: Mon Apr 19 15:29:06 2021 +0200

x86: use is_pv_64bit_domain() to avoid double evaluate_nospec()

Signed-off-by: Jan Beulich <jbeulich@suse.com>
Reviewed-by: Roger Pau Monné <roger.pau@citrix.com>
---
xen/arch/x86/domain.c | 7 +++----
1 file changed, 3 insertions(+), 4 deletions(-)

diff --git a/xen/arch/x86/domain.c b/xen/arch/x86/domain.c
index 40e8ce7544..4dc27f798e 100644
--- a/xen/arch/x86/domain.c
+++ b/xen/arch/x86/domain.c
@@ -1115,7 +1115,7 @@ int arch_set_info_guest(
* update_cr3(), sh_update_cr3(), sh_walk_guest_tables(), and
* shadow_one_bit_disable() for why that is.
*/
- !is_hvm_domain(d) && !is_pv_32bit_domain(d) )
+ is_pv_64bit_domain(d) )
v->arch.flags &= ~TF_kernel_mode;

vcpu_setup_fpu(v, v->arch.xsave_area,
@@ -1267,7 +1267,7 @@ int arch_set_info_guest(
* correct initial RO_MPT_VIRT_{START,END} L4 entry).
*/
if ( d != current->domain && !VM_ASSIST(d, m2p_strict) &&
- is_pv_domain(d) && !is_pv_32bit_domain(d) &&
+ is_pv_64bit_domain(d) &&
test_bit(VMASST_TYPE_m2p_strict, &c.nat->vm_assist) &&
atomic_read(&d->arch.pv.nr_l4_pages) )
{
@@ -2002,8 +2002,7 @@ static void __context_switch(void)

#if defined(CONFIG_PV) && defined(CONFIG_HVM)
/* Prefetch the VMCB if we expect to use it later in the context switch */
- if ( cpu_has_svm && is_pv_domain(nd) && !is_pv_32bit_domain(nd) &&
- !is_idle_domain(nd) )
+ if ( cpu_has_svm && is_pv_64bit_domain(nd) && !is_idle_domain(nd) )
svm_load_segs_prefetch();
#endif

--
generated by git-patchbot for /home/xen/git/xen.git#staging