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-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 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   (0)
 
#define ARCH_PFN_OFFSET   (PAGE_OFFSET >> PAGE_SHIFT)
 
#define __va(x)   ((void *)((unsigned long) (x)))
 
#define __pa(x)   ((unsigned long) (x))
 
#define virt_to_pfn(kaddr)   (__pa(kaddr) >> PAGE_SHIFT)
 
#define pfn_to_virt(pfn)   __va((pfn) << PAGE_SHIFT)
 
#define virt_to_page(addr)   pfn_to_page(virt_to_pfn(addr))
 
#define page_to_virt(page)   pfn_to_virt(page_to_pfn(page))
 
#define page_to_phys(page)   ((dma_addr_t)page_to_pfn(page) << PAGE_SHIFT)
 
#define pfn_valid(pfn)   ((pfn) >= ARCH_PFN_OFFSET && ((pfn) - ARCH_PFN_OFFSET) < max_mapnr)
 
#define virt_addr_valid(kaddr)
 

Typedefs

typedef struct pagepgtable_t
 

Variables

unsigned long memory_start
 
unsigned long memory_end
 

Macro Definition Documentation

#define __pa (   x)    ((unsigned long) (x))

Definition at line 81 of file page.h.

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

Definition at line 60 of file page.h.

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

Definition at line 61 of file page.h.

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

Definition at line 59 of file page.h.

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

Definition at line 58 of file page.h.

#define __va (   x)    ((void *)((unsigned long) (x)))

Definition at line 80 of file page.h.

#define ARCH_PFN_OFFSET   (PAGE_OFFSET >> PAGE_SHIFT)

Definition at line 75 of file page.h.

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

Definition at line 30 of file page.h.

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

Definition at line 33 of file page.h.

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

Definition at line 31 of file page.h.

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

Definition at line 34 of file page.h.

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

Definition at line 28 of file page.h.

#define get_user_page (   vaddr)    __get_free_page(GFP_KERNEL)

Definition at line 27 of file page.h.

#define PAGE_MASK   (~(PAGE_SIZE-1))

Definition at line 21 of file page.h.

#define PAGE_OFFSET   (0)

Definition at line 71 of file page.h.

#define PAGE_SHIFT   12

Definition at line 15 of file page.h.

#define PAGE_SIZE   (1UL << PAGE_SHIFT)

Definition at line 19 of file page.h.

#define page_to_phys (   page)    ((dma_addr_t)page_to_pfn(page) << PAGE_SHIFT)

Definition at line 90 of file page.h.

#define page_to_virt (   page)    pfn_to_virt(page_to_pfn(page))

Definition at line 87 of file page.h.

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

Definition at line 84 of file page.h.

#define pfn_valid (   pfn)    ((pfn) >= ARCH_PFN_OFFSET && ((pfn) - ARCH_PFN_OFFSET) < max_mapnr)

Definition at line 93 of file page.h.

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

Definition at line 55 of file page.h.

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

Definition at line 56 of file page.h.

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

Definition at line 54 of file page.h.

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

Definition at line 53 of file page.h.

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

Definition at line 95 of file page.h.

#define virt_to_page (   addr)    pfn_to_page(virt_to_pfn(addr))

Definition at line 86 of file page.h.

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

Definition at line 83 of file page.h.

Typedef Documentation

typedef struct page* pgtable_t

Definition at line 51 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.