nested-p2m: suppress np2m flushes during p2m setup
authorChristoph Egger <Christoph.Egger@amd.com>
Mon, 22 Aug 2011 13:37:29 +0000 (14:37 +0100)
committerChristoph Egger <Christoph.Egger@amd.com>
Mon, 22 Aug 2011 13:37:29 +0000 (14:37 +0100)
There is no need to send IPIs within p2m_alloc_table() via
set_p2m_entry().

Signed-off-by: Christoph Egger <Christoph.Egger@amd.com>
Committed-by: Tim Deegan <tim@xen.org>
xen/arch/x86/mm/p2m.c

index 26e53e74b15dd8cc10edac058a9b3c7e9d478a9a..3ae5a49752ce5c222de3f6ba9acb0c2288225cf6 100644 (file)
@@ -245,6 +245,7 @@ int p2m_alloc_table(struct p2m_domain *p2m)
     P2M_PRINTK("populating p2m table\n");
 
     /* Initialise physmap tables for slot zero. Other code assumes this. */
+    p2m->defer_nested_flush = 1;
     if ( !set_p2m_entry(p2m, 0, _mfn(INVALID_MFN), 0,
                         p2m_invalid, p2m->default_access) )
         goto error;
@@ -272,6 +273,7 @@ int p2m_alloc_table(struct p2m_domain *p2m)
         }
         spin_unlock(&p2m->domain->page_alloc_lock);
     }
+    p2m->defer_nested_flush = 0;
 
     P2M_PRINTK("p2m table initialised (%u pages)\n", page_count);
     p2m_unlock(p2m);