Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Data Structures | Macros | Typedefs | Variables
page.h File Reference
#include <asm/setup.h>
#include <asm/page_offset.h>
#include <asm-generic/memory_model.h>
#include <asm-generic/getorder.h>

Go to the source code of this file.

Data Structures

struct  pte_t
 
struct  pmd_t
 
struct  pgd_t
 
struct  pgprot_t
 

Macros

#define PAGE_SHIFT   (12)
 
#define PAGE_SIZE   (1UL << PAGE_SHIFT)
 
#define PAGE_MASK   (~(PAGE_SIZE-1))
 
#define get_user_page(vaddr)   __get_free_page(GFP_KERNEL)
 
#define free_user_page(page, addr)   free_page(addr)
 
#define clear_page(page)   memset((page), 0, PAGE_SIZE)
 
#define copy_page(to, from)   memcpy((to), (from), PAGE_SIZE)
 
#define clear_user_page(page, vaddr, pg)   clear_page(page)
 
#define copy_user_page(to, from, vaddr, pg)   copy_page(to, from)
 
#define __alloc_zeroed_user_highpage(movableflags, vma, vaddr)   alloc_page_vma(GFP_HIGHUSER | __GFP_ZERO | movableflags, vma, vaddr)
 
#define __HAVE_ARCH_ALLOC_ZEROED_USER_HIGHPAGE
 
#define pte_val(x)   ((x).pte)
 
#define pmd_val(x)   ((&x)->pmd[0])
 
#define pgd_val(x)   ((x).pgd)
 
#define pgprot_val(x)   ((x).pgprot)
 
#define __pte(x)   ((pte_t) { (x) } )
 
#define __pmd(x)   ((pmd_t) { (x) } )
 
#define __pgd(x)   ((pgd_t) { (x) } )
 
#define __pgprot(x)   ((pgprot_t) { (x) } )
 
#define PAGE_OFFSET   (PAGE_OFFSET_RAW)
 
#define __pa(vaddr)   virt_to_phys(vaddr)
 
#define __va(paddr)   phys_to_virt((unsigned long)paddr)
 
#define virt_to_pfn(kaddr)   (__pa(kaddr) >> PAGE_SHIFT)
 
#define pfn_to_virt(pfn)   __va((pfn) << PAGE_SHIFT)
 
#define MAP_NR(addr)   (((unsigned long)(addr)-PAGE_OFFSET) >> PAGE_SHIFT)
 
#define virt_to_page(addr)   (mem_map + (((unsigned long)(addr)-PAGE_OFFSET) >> PAGE_SHIFT))
 
#define page_to_virt(page)   ((((page) - mem_map) << PAGE_SHIFT) + PAGE_OFFSET)
 
#define pfn_valid(page)   (page < max_mapnr)
 
#define ARCH_PFN_OFFSET   (PAGE_OFFSET >> PAGE_SHIFT)
 
#define virt_addr_valid(kaddr)
 

Typedefs

typedef struct pagepgtable_t
 

Variables

unsigned long memory_start
 
unsigned long memory_end
 

Macro Definition Documentation

#define __alloc_zeroed_user_highpage (   movableflags,
  vma,
  vaddr 
)    alloc_page_vma(GFP_HIGHUSER | __GFP_ZERO | movableflags, vma, vaddr)

Definition at line 23 of file page.h.

#define __HAVE_ARCH_ALLOC_ZEROED_USER_HIGHPAGE

Definition at line 25 of file page.h.

#define __pa (   vaddr)    virt_to_phys(vaddr)

Definition at line 57 of file page.h.

#define __pgd (   x)    ((pgd_t) { (x) } )

Definition at line 43 of file page.h.

#define __pgprot (   x)    ((pgprot_t) { (x) } )

Definition at line 44 of file page.h.

#define __pmd (   x)    ((pmd_t) { (x) } )

Definition at line 42 of file page.h.

#define __pte (   x)    ((pte_t) { (x) } )

Definition at line 41 of file page.h.

#define __va (   paddr)    phys_to_virt((unsigned long)paddr)

Definition at line 58 of file page.h.

#define ARCH_PFN_OFFSET   (PAGE_OFFSET >> PAGE_SHIFT)

Definition at line 68 of file page.h.

#define clear_page (   page)    memset((page), 0, PAGE_SIZE)

Definition at line 17 of file page.h.

#define clear_user_page (   page,
  vaddr,
  pg 
)    clear_page(page)

Definition at line 20 of file page.h.

#define copy_page (   to,
  from 
)    memcpy((to), (from), PAGE_SIZE)

Definition at line 18 of file page.h.

#define copy_user_page (   to,
  from,
  vaddr,
  pg 
)    copy_page(to, from)

Definition at line 21 of file page.h.

#define free_user_page (   page,
  addr 
)    free_page(addr)

Definition at line 15 of file page.h.

#define get_user_page (   vaddr)    __get_free_page(GFP_KERNEL)

Definition at line 14 of file page.h.

#define MAP_NR (   addr)    (((unsigned long)(addr)-PAGE_OFFSET) >> PAGE_SHIFT)

Definition at line 63 of file page.h.

#define PAGE_MASK   (~(PAGE_SIZE-1))

Definition at line 8 of file page.h.

#define PAGE_OFFSET   (PAGE_OFFSET_RAW)

Definition at line 53 of file page.h.

#define PAGE_SHIFT   (12)

Definition at line 6 of file page.h.

#define PAGE_SIZE   (1UL << PAGE_SHIFT)

Definition at line 7 of file page.h.

#define page_to_virt (   page)    ((((page) - mem_map) << PAGE_SHIFT) + PAGE_OFFSET)

Definition at line 65 of file page.h.

#define pfn_to_virt (   pfn)    __va((pfn) << PAGE_SHIFT)

Definition at line 61 of file page.h.

#define pfn_valid (   page)    (page < max_mapnr)

Definition at line 66 of file page.h.

#define pgd_val (   x)    ((x).pgd)

Definition at line 38 of file page.h.

#define pgprot_val (   x)    ((x).pgprot)

Definition at line 39 of file page.h.

#define pmd_val (   x)    ((&x)->pmd[0])

Definition at line 37 of file page.h.

#define pte_val (   x)    ((x).pte)

Definition at line 36 of file page.h.

#define virt_addr_valid (   kaddr)
Value:
(((void *)(kaddr) >= (void *)PAGE_OFFSET) && \
((void *)(kaddr) < (void *)memory_end))

Definition at line 70 of file page.h.

#define virt_to_page (   addr)    (mem_map + (((unsigned long)(addr)-PAGE_OFFSET) >> PAGE_SHIFT))

Definition at line 64 of file page.h.

#define virt_to_pfn (   kaddr)    (__pa(kaddr) >> PAGE_SHIFT)

Definition at line 60 of file page.h.

Typedef Documentation

typedef struct page* pgtable_t

Definition at line 34 of file page.h.

Variable Documentation

unsigned long memory_end

Definition at line 42 of file setup.c.

unsigned long memory_start

Definition at line 42 of file setup.c.