Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Macros | Functions | Variables
pgalloc.h File Reference
#include <linux/threads.h>
#include <linux/mm.h>
#include <linux/pagemap.h>

Go to the source code of this file.

Macros

#define paravirt_pgd_alloc(mm)   __paravirt_pgd_alloc(mm)
 
#define pmd_pgtable(pmd)   pmd_page(pmd)
 

Functions

pgd_tpgd_alloc (struct mm_struct *)
 
void pgd_free (struct mm_struct *mm, pgd_t *pgd)
 
pte_tpte_alloc_one_kernel (struct mm_struct *, unsigned long)
 
pgtable_t pte_alloc_one (struct mm_struct *, unsigned long)
 
void ___pte_free_tlb (struct mmu_gather *tlb, struct page *pte)
 

Variables

gfp_t __userpte_alloc_gfp
 

Macro Definition Documentation

#define paravirt_pgd_alloc (   mm)    __paravirt_pgd_alloc(mm)

Definition at line 13 of file pgalloc.h.

#define pmd_pgtable (   pmd)    pmd_page(pmd)

Definition at line 78 of file pgalloc.h.

Function Documentation

void ___pte_free_tlb ( struct mmu_gather tlb,
struct page pte 
)

Definition at line 50 of file pgtable.c.

pgd_t* pgd_alloc ( struct mm_struct )

Definition at line 40 of file init.c.

void pgd_free ( struct mm_struct mm,
pgd_t pgd 
)

Definition at line 107 of file pgd.c.

pgtable_t pte_alloc_one ( struct mm_struct ,
unsigned  long 
)
read

Definition at line 31 of file pgalloc.c.

pte_t* pte_alloc_one_kernel ( struct mm_struct mm,
unsigned long  address 
)
inline

OK, this one's a bit tricky... ioremap can get called before memory is initialized (early serial console does this) and will want to alloc a page for its mapping. No userspace pages will ever get allocated before memory is initialized so this applies only to kernel pages. In the event that this is called before memory is initialized we allocate the page using the memblock infrastructure.

Definition at line 23 of file pgalloc.c.

Variable Documentation

gfp_t __userpte_alloc_gfp

Definition at line 16 of file pgtable.c.