Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Data Structures | Macros | Typedefs
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  pgd_t
 
struct  pgprot_t
 

Macros

#define PAGE_SHIFT   13
 
#define PAGE_SIZE   (1UL << PAGE_SHIFT)
 
#define PAGE_MASK   (~(PAGE_SIZE-1))
 
#define PAGE_OFFSET   0xc0000000
 
#define KERNELBASE   PAGE_OFFSET
 
#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 pgd_val(x)   ((x).pgd)
 
#define pgprot_val(x)   ((x).pgprot)
 
#define __pte(x)   ((pte_t) { (x) })
 
#define __pgd(x)   ((pgd_t) { (x) })
 
#define __pgprot(x)   ((pgprot_t) { (x) })
 
#define __va(x)   ((void *)((unsigned long)(x) + PAGE_OFFSET))
 
#define __pa(x)   ((unsigned long) (x) - PAGE_OFFSET)
 
#define virt_to_pfn(kaddr)   (__pa(kaddr) >> PAGE_SHIFT)
 
#define pfn_to_virt(pfn)   __va((pfn) << 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 page_to_phys(page)   ((dma_addr_t)page_to_pfn(page) << PAGE_SHIFT)
 
#define pfn_valid(pfn)   ((pfn) < max_mapnr)
 
#define virt_addr_valid(kaddr)   (pfn_valid(virt_to_pfn(kaddr)))
 
#define VM_DATA_DEFAULT_FLAGS
 

Typedefs

typedef struct pagepgtable_t
 

Macro Definition Documentation

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

Definition at line 80 of file page.h.

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

Definition at line 71 of file page.h.

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

Definition at line 72 of file page.h.

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

Definition at line 70 of file page.h.

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

Definition at line 79 of file page.h.

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

Definition at line 46 of file page.h.

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

Definition at line 49 of file page.h.

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

Definition at line 47 of file page.h.

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

Definition at line 50 of file page.h.

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

Definition at line 44 of file page.h.

#define get_user_page (   vaddr)    __get_free_page(GFP_KERNEL)

Definition at line 43 of file page.h.

#define KERNELBASE   PAGE_OFFSET

Definition at line 34 of file page.h.

#define PAGE_MASK   (~(PAGE_SIZE-1))

Definition at line 31 of file page.h.

#define PAGE_OFFSET   0xc0000000

Definition at line 33 of file page.h.

#define PAGE_SHIFT   13

Definition at line 25 of file page.h.

#define PAGE_SIZE   (1UL << PAGE_SHIFT)

Definition at line 29 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)    ((((page) - mem_map) << PAGE_SHIFT) + PAGE_OFFSET)

Definition at line 87 of file page.h.

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

Definition at line 83 of file page.h.

#define pfn_valid (   pfn)    ((pfn) < max_mapnr)

Definition at line 92 of file page.h.

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

Definition at line 67 of file page.h.

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

Definition at line 68 of file page.h.

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

Definition at line 66 of file page.h.

#define virt_addr_valid (   kaddr)    (pfn_valid(virt_to_pfn(kaddr)))

Definition at line 94 of file page.h.

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

Definition at line 85 of file page.h.

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

Definition at line 82 of file page.h.

#define VM_DATA_DEFAULT_FLAGS
Value:
(VM_READ | VM_WRITE | VM_EXEC | \
VM_MAYREAD | VM_MAYWRITE | VM_MAYEXEC)

Definition at line 99 of file page.h.

Typedef Documentation

typedef struct page* pgtable_t

Definition at line 64 of file page.h.