|
|
|
|
|
|
|
|
|
|
xen-devel
Re: [Xen-devel] [PATCH] nestedhvm: reduce IPIs with nested-on-nested
Hi,
At 12:04 +0200 on 18 Aug (1313669099), Christoph Egger wrote:
> --- a/xen/arch/x86/mm/hap/nested_hap.c Mon Aug 08 11:36:21 2011 +0200
> +++ b/xen/arch/x86/mm/hap/nested_hap.c Thu Aug 18 11:54:17 2011 +0200
> @@ -86,8 +86,10 @@ nestedp2m_write_p2m_entry(struct p2m_dom
>
> old_flags = l1e_get_flags(*p);
> safe_write_pte(p, new);
> - if (old_flags & _PAGE_PRESENT)
> - nestedhvm_vmcx_flushtlb(p2m);
> +
> + if ( (old_flags & _PAGE_PRESENT)
> + && (level == 1 || (level == 2 && (old_flags & _PAGE_PSE))) )
> + flush_tlb_mask(&p2m->p2m_dirty_cpumask);
I think you need to flush on all levels, since the TLB can contain
partial walks.
> paging_unlock(d);
> }
> diff -r ce4768a78051 xen/arch/x86/mm/p2m.c
> --- a/xen/arch/x86/mm/p2m.c Mon Aug 08 11:36:21 2011 +0200
> +++ b/xen/arch/x86/mm/p2m.c Thu Aug 18 11:54:17 2011 +0200
> @@ -1164,7 +1164,6 @@ p2m_get_nestedp2m(struct vcpu *v, uint64
> p2m->cr3 = cr3;
> nv->nv_flushp2m = 0;
> hvm_asid_flush_vcpu(v);
> - nestedhvm_vmcx_flushtlb(p2m);
This is an unrelated fix and should be in a separate patch.
Cheers,
Tim.
--
Tim Deegan <tim@xxxxxxx>
Principal Software Engineer, Xen Platform Team
Citrix Systems UK Ltd. (Company #02937203, SL9 0BG)
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel
|
|
|
|
|