mm: move pgtable related functions to right place
pgtable related functions are mostly in pgtable-generic.c. So move remaining functions from memory.c to pgtable-generic.c. Signed-off-by: Joonsoo Kim <iamjoonsoo.kim@lge.com> Cc: Johannes Weiner <hannes@cmpxchg.org> Cc: Minchan Kim <minchan@kernel.org> Cc: Mel Gorman <mgorman@suse.de> Cc: Rik van Riel <riel@redhat.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
This commit is contained in:
Родитель
e66f097257
Коммит
bc4b4448db
24
mm/memory.c
24
mm/memory.c
|
@ -372,30 +372,6 @@ void tlb_remove_table(struct mmu_gather *tlb, void *table)
|
|||
|
||||
#endif /* CONFIG_HAVE_RCU_TABLE_FREE */
|
||||
|
||||
/*
|
||||
* If a p?d_bad entry is found while walking page tables, report
|
||||
* the error, before resetting entry to p?d_none. Usually (but
|
||||
* very seldom) called out from the p?d_none_or_clear_bad macros.
|
||||
*/
|
||||
|
||||
void pgd_clear_bad(pgd_t *pgd)
|
||||
{
|
||||
pgd_ERROR(*pgd);
|
||||
pgd_clear(pgd);
|
||||
}
|
||||
|
||||
void pud_clear_bad(pud_t *pud)
|
||||
{
|
||||
pud_ERROR(*pud);
|
||||
pud_clear(pud);
|
||||
}
|
||||
|
||||
void pmd_clear_bad(pmd_t *pmd)
|
||||
{
|
||||
pmd_ERROR(*pmd);
|
||||
pmd_clear(pmd);
|
||||
}
|
||||
|
||||
/*
|
||||
* Note: this doesn't free the actual pages themselves. That
|
||||
* has been handled earlier when unmapping all the memory regions.
|
||||
|
|
|
@ -10,6 +10,30 @@
|
|||
#include <asm/tlb.h>
|
||||
#include <asm-generic/pgtable.h>
|
||||
|
||||
/*
|
||||
* If a p?d_bad entry is found while walking page tables, report
|
||||
* the error, before resetting entry to p?d_none. Usually (but
|
||||
* very seldom) called out from the p?d_none_or_clear_bad macros.
|
||||
*/
|
||||
|
||||
void pgd_clear_bad(pgd_t *pgd)
|
||||
{
|
||||
pgd_ERROR(*pgd);
|
||||
pgd_clear(pgd);
|
||||
}
|
||||
|
||||
void pud_clear_bad(pud_t *pud)
|
||||
{
|
||||
pud_ERROR(*pud);
|
||||
pud_clear(pud);
|
||||
}
|
||||
|
||||
void pmd_clear_bad(pmd_t *pmd)
|
||||
{
|
||||
pmd_ERROR(*pmd);
|
||||
pmd_clear(pmd);
|
||||
}
|
||||
|
||||
#ifndef __HAVE_ARCH_PTEP_SET_ACCESS_FLAGS
|
||||
/*
|
||||
* Only sets the access flags (dirty, accessed), as well as write
|
||||
|
|
Загрузка…
Ссылка в новой задаче