Loading arch/x86/mm/init_64.c +0 −43 Original line number Diff line number Diff line Loading @@ -434,49 +434,6 @@ void __init paging_init(void) } #endif /* * Unmap a kernel mapping if it exists. This is useful to avoid * prefetches from the CPU leading to inconsistent cache lines. * address and size must be aligned to 2MB boundaries. * Does nothing when the mapping doesn't exist. */ void __init clear_kernel_mapping(unsigned long address, unsigned long size) { unsigned long end = address + size; BUG_ON(address & ~PMD_PAGE_MASK); BUG_ON(size & ~PMD_PAGE_MASK); for (; address < end; address += PMD_PAGE_SIZE) { pgd_t *pgd = pgd_offset_k(address); pud_t *pud; pmd_t *pmd; if (pgd_none(*pgd)) continue; pud = pud_offset(pgd, address); if (pud_none(*pud)) continue; pmd = pmd_offset(pud, address); if (!pmd || pmd_none(*pmd)) continue; if (!(pmd_val(*pmd) & _PAGE_PSE)) { /* * Could handle this, but it should not happen * currently: */ printk(KERN_ERR "clear_kernel_mapping: " "mapping has been split. will leak memory\n"); pmd_ERROR(*pmd); } set_pmd(pmd, __pmd(0)); } __flush_tlb_all(); } /* * Memory hotplug specific functions */ Loading include/asm-x86/pgtable_64.h +0 −1 Original line number Diff line number Diff line Loading @@ -21,7 +21,6 @@ extern pgd_t init_level4_pgt[]; #define swapper_pg_dir init_level4_pgt extern void paging_init(void); extern void clear_kernel_mapping(unsigned long addr, unsigned long size); #endif /* !__ASSEMBLY__ */ Loading Loading
arch/x86/mm/init_64.c +0 −43 Original line number Diff line number Diff line Loading @@ -434,49 +434,6 @@ void __init paging_init(void) } #endif /* * Unmap a kernel mapping if it exists. This is useful to avoid * prefetches from the CPU leading to inconsistent cache lines. * address and size must be aligned to 2MB boundaries. * Does nothing when the mapping doesn't exist. */ void __init clear_kernel_mapping(unsigned long address, unsigned long size) { unsigned long end = address + size; BUG_ON(address & ~PMD_PAGE_MASK); BUG_ON(size & ~PMD_PAGE_MASK); for (; address < end; address += PMD_PAGE_SIZE) { pgd_t *pgd = pgd_offset_k(address); pud_t *pud; pmd_t *pmd; if (pgd_none(*pgd)) continue; pud = pud_offset(pgd, address); if (pud_none(*pud)) continue; pmd = pmd_offset(pud, address); if (!pmd || pmd_none(*pmd)) continue; if (!(pmd_val(*pmd) & _PAGE_PSE)) { /* * Could handle this, but it should not happen * currently: */ printk(KERN_ERR "clear_kernel_mapping: " "mapping has been split. will leak memory\n"); pmd_ERROR(*pmd); } set_pmd(pmd, __pmd(0)); } __flush_tlb_all(); } /* * Memory hotplug specific functions */ Loading
include/asm-x86/pgtable_64.h +0 −1 Original line number Diff line number Diff line Loading @@ -21,7 +21,6 @@ extern pgd_t init_level4_pgt[]; #define swapper_pg_dir init_level4_pgt extern void paging_init(void); extern void clear_kernel_mapping(unsigned long addr, unsigned long size); #endif /* !__ASSEMBLY__ */ Loading