diff options
author | Jan Beulich <jbeulich@suse.com> | 2013-06-12 17:27:08 +0200 |
---|---|---|
committer | Jan Beulich <jbeulich@suse.com> | 2013-06-12 17:27:08 +0200 |
commit | fd0b06689555be4855b9a70c4f4995e623168e94 (patch) | |
tree | 9f05609829e9b88ddf5e9b9a263e4a0bad755c4e | |
parent | 4015145b148121d9647d8a2abe897aabb7197c95 (diff) | |
download | xen-fd0b06689555be4855b9a70c4f4995e623168e94.tar.gz xen-fd0b06689555be4855b9a70c4f4995e623168e94.tar.bz2 xen-fd0b06689555be4855b9a70c4f4995e623168e94.zip |
x86: drop setup_idle_pagetable()
With vcpu->domain->arch.perdomain_l3_pg no longer getting set up for
the idle domain, this creates an invalid L4 entry (due to translating
a NULL struct page_info pointer to a physical address).
Signed-off-by: Jan Beulich <jbeulich@suse.com>
Acked-by: Keir Fraser <keir@xen.org>
Reviewed-by: Andrew Cooper <andrew.cooper3@citrix.com>
Acked-by: George Dunlap <george.dunlap@eu.citrix.com>
-rw-r--r-- | xen/arch/x86/setup.c | 1 | ||||
-rw-r--r-- | xen/arch/x86/x86_64/mm.c | 8 | ||||
-rw-r--r-- | xen/include/asm-x86/page.h | 1 |
3 files changed, 0 insertions, 10 deletions
diff --git a/xen/arch/x86/setup.c b/xen/arch/x86/setup.c index 8c8b78dd7c..a70d31bbbb 100644 --- a/xen/arch/x86/setup.c +++ b/xen/arch/x86/setup.c @@ -185,7 +185,6 @@ static void __init init_idle_domain(void) scheduler_init(); set_current(idle_vcpu[0]); this_cpu(curr_vcpu) = current; - setup_idle_pagetable(); } void __devinit srat_detect_node(int cpu) diff --git a/xen/arch/x86/x86_64/mm.c b/xen/arch/x86/x86_64/mm.c index 8cd0d30e84..96a033bf88 100644 --- a/xen/arch/x86/x86_64/mm.c +++ b/xen/arch/x86/x86_64/mm.c @@ -810,14 +810,6 @@ void __init paging_init(void) panic("Not enough memory for m2p table\n"); } -void __init setup_idle_pagetable(void) -{ - /* Install per-domain mappings for idle domain. */ - l4e_write(&idle_pg_table[l4_table_offset(PERDOMAIN_VIRT_START)], - l4e_from_page(idle_vcpu[0]->domain->arch.perdomain_l3_pg, - __PAGE_HYPERVISOR)); -} - void __init zap_low_mappings(void) { BUG_ON(num_online_cpus() != 1); diff --git a/xen/include/asm-x86/page.h b/xen/include/asm-x86/page.h index e53e1e5a75..998a0c79dd 100644 --- a/xen/include/asm-x86/page.h +++ b/xen/include/asm-x86/page.h @@ -286,7 +286,6 @@ extern l2_pgentry_t l2_identmap[4*L2_PAGETABLE_ENTRIES]; extern l1_pgentry_t l1_identmap[L1_PAGETABLE_ENTRIES], l1_fixmap[L1_PAGETABLE_ENTRIES]; void paging_init(void); -void setup_idle_pagetable(void); #endif /* !defined(__ASSEMBLY__) */ #define _PAGE_PRESENT _AC(0x001,U) |