[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-changelog] [xen-unstable] Nested p2m: flush only one p2m table when reallocating.
# HG changeset patch # User Tim Deegan <Tim.Deegan@xxxxxxxxxx> # Date 1309426014 -3600 # Node ID 2115801e8e4786a666d768d7847721b7d5650275 # Parent 4873ab6f347327e6e01eb546f362e94696151635 Nested p2m: flush only one p2m table when reallocating. It's unhelpful to flush all of them when we only need one. Reported-by: Christoph Egger <Christoph.Egger@xxxxxxx> Signed-off-by: Tim Deegan <Tim.Deegan@xxxxxxxxxx> Acked-by: Christoph Egger <Christoph.Egger@xxxxxxx> --- diff -r 4873ab6f3473 -r 2115801e8e47 xen/arch/x86/mm/p2m.c --- a/xen/arch/x86/mm/p2m.c Thu Jun 30 10:26:54 2011 +0100 +++ b/xen/arch/x86/mm/p2m.c Thu Jun 30 10:26:54 2011 +0100 @@ -1120,7 +1120,6 @@ volatile struct nestedvcpu *nv = &vcpu_nestedhvm(v); struct domain *d; struct p2m_domain *p2m; - int i; /* Mask out low bits; this avoids collisions with CR3_EADDR */ cr3 &= ~(0xfffull); @@ -1146,12 +1145,9 @@ } /* All p2m's are or were in use. Take the least recent used one, - * flush it and reuse. - */ - for (i = 0; i < MAX_NESTEDP2M; i++) { - p2m = p2m_getlru_nestedp2m(d, NULL); - p2m_flush_locked(p2m); - } + * flush it and reuse. */ + p2m = p2m_getlru_nestedp2m(d, NULL); + p2m_flush_locked(p2m); nv->nv_p2m = p2m; p2m->cr3 = cr3; nv->nv_flushp2m = 0; _______________________________________________ Xen-changelog mailing list Xen-changelog@xxxxxxxxxxxxxxxxxxx http://lists.xensource.com/xen-changelog
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |