[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [PATCH 5/5] x86/PV32: avoid TLB flushing after mod_l3_entry()
32-bit guests may not depend upon the side effect of using ordinary 4-level paging when running on a 64-bit hypervisor. For L3 entry updates to take effect, they have to use a CR3 reload. Therefore there's no need to issue a paging structure invalidating TLB flush in this case. Signed-off-by: Jan Beulich <jbeulich@xxxxxxxx> --- a/xen/arch/x86/mm.c +++ b/xen/arch/x86/mm.c @@ -4066,7 +4066,8 @@ long do_mmu_update( cmd == MMU_PT_UPDATE_PRESERVE_AD, v); if ( !rc && (page->u.inuse.type_info & PGT_count_mask) > - 1 + !!(page->u.inuse.type_info & PGT_pinned) ) + 1 + !!(page->u.inuse.type_info & PGT_pinned) && + !is_pv_32bit_domain(pt_owner) ) flush_linear_pt = true; break;
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |