[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] [PATCH] x86/HAP: also flush TLB when altering a present 1G entry
At 11:29 +0100 on 11 Apr (1397212176), Jan Beulich wrote: > I actually wonder whether it is really correct to avoid the flush when > updating intermediate page table entries. It certainly used to be; now that we have, e.g. p2m_free_entry() it would be best to flush whenever (old_flags & _PAGE_PRESENT). Tim. > Signed-off-by: Jan Beulich <jbeulich@xxxxxxxx> > > --- a/xen/arch/x86/mm/hap/hap.c > +++ b/xen/arch/x86/mm/hap/hap.c > @@ -712,7 +712,7 @@ hap_write_p2m_entry(struct vcpu *v, unsi > > safe_write_pte(p, new); > if ( (old_flags & _PAGE_PRESENT) > - && (level == 1 || (level == 2 && (old_flags & _PAGE_PSE))) ) > + && (level == 1 || (old_flags & _PAGE_PSE)) ) > flush_tlb_mask(d->domain_dirty_cpumask); > > paging_unlock(d); > > > > x86/HAP: also flush TLB when altering a present 1G entry > > I actually wonder whether it is really correct to avoid the flush when > updating intermediate page table entries. > > Signed-off-by: Jan Beulich <jbeulich@xxxxxxxx> > > --- a/xen/arch/x86/mm/hap/hap.c > +++ b/xen/arch/x86/mm/hap/hap.c > @@ -712,7 +712,7 @@ hap_write_p2m_entry(struct vcpu *v, unsi > > safe_write_pte(p, new); > if ( (old_flags & _PAGE_PRESENT) > - && (level == 1 || (level == 2 && (old_flags & _PAGE_PSE))) ) > + && (level == 1 || (old_flags & _PAGE_PSE)) ) > flush_tlb_mask(d->domain_dirty_cpumask); > > paging_unlock(d); _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxx http://lists.xen.org/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |