|
@@ -1178,20 +1178,6 @@ static void xen_exit_mmap(struct mm_struct *mm)
|
|
|
|
|
|
static void xen_post_allocator_init(void);
|
|
|
|
|
|
-static __init void xen_mapping_pagetable_reserve(u64 start, u64 end)
|
|
|
-{
|
|
|
- /* reserve the range used */
|
|
|
- native_pagetable_reserve(start, end);
|
|
|
-
|
|
|
- /* set as RW the rest */
|
|
|
- printk(KERN_DEBUG "xen: setting RW the range %llx - %llx\n", end,
|
|
|
- PFN_PHYS(pgt_buf_top));
|
|
|
- while (end < PFN_PHYS(pgt_buf_top)) {
|
|
|
- make_lowmem_page_readwrite(__va(end));
|
|
|
- end += PAGE_SIZE;
|
|
|
- }
|
|
|
-}
|
|
|
-
|
|
|
#ifdef CONFIG_X86_64
|
|
|
static void __init xen_cleanhighmap(unsigned long vaddr,
|
|
|
unsigned long vaddr_end)
|
|
@@ -1503,19 +1489,6 @@ static pte_t __init mask_rw_pte(pte_t *ptep, pte_t pte)
|
|
|
#else /* CONFIG_X86_64 */
|
|
|
static pte_t __init mask_rw_pte(pte_t *ptep, pte_t pte)
|
|
|
{
|
|
|
- unsigned long pfn = pte_pfn(pte);
|
|
|
-
|
|
|
- /*
|
|
|
- * If the new pfn is within the range of the newly allocated
|
|
|
- * kernel pagetable, and it isn't being mapped into an
|
|
|
- * early_ioremap fixmap slot as a freshly allocated page, make sure
|
|
|
- * it is RO.
|
|
|
- */
|
|
|
- if (((!is_early_ioremap_ptep(ptep) &&
|
|
|
- pfn >= pgt_buf_start && pfn < pgt_buf_top)) ||
|
|
|
- (is_early_ioremap_ptep(ptep) && pfn != (pgt_buf_end - 1)))
|
|
|
- pte = pte_wrprotect(pte);
|
|
|
-
|
|
|
return pte;
|
|
|
}
|
|
|
#endif /* CONFIG_X86_64 */
|
|
@@ -2197,7 +2170,6 @@ static const struct pv_mmu_ops xen_mmu_ops __initconst = {
|
|
|
|
|
|
void __init xen_init_mmu_ops(void)
|
|
|
{
|
|
|
- x86_init.mapping.pagetable_reserve = xen_mapping_pagetable_reserve;
|
|
|
x86_init.paging.pagetable_init = xen_pagetable_init;
|
|
|
pv_mmu_ops = xen_mmu_ops;
|
|
|
|