Secondary VCPUs can take page faults immediately after
booting, because of writable pagetable logic.
Signed-off-by: Keir Fraser <keir@xensource.com>
{
unsigned long vaddr;
pgd_t *pgd_base = (pgd_t *)xen_start_info.pt_base;
+ int i;
swapper_pg_dir = pgd_base;
init_mm.pgd = pgd_base;
+ for (i = 0; i < NR_CPUS; i++)
+ per_cpu(cur_pgd, i) = pgd_base;
/* Enable PSE if available */
if (cpu_has_pse) {
void __init xen_init_pt(void)
{
+ int i;
+
+ for (i = 0; i < NR_CPUS; i++)
+ per_cpu(cur_pgd, i) = init_mm.pgd;
+
memcpy((void *)init_level4_pgt,
(void *)xen_start_info.pt_base, PAGE_SIZE);