Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Macros | Typedefs | Functions | Variables
pgtable.h File Reference
#include <asm-generic/4level-fixup.h>
#include <asm/page.h>
#include <asm/def_LPBlackfin.h>
#include <asm-generic/pgtable.h>

Go to the source code of this file.

Macros

#define pgd_present(pgd)   (1)
 
#define pgd_none(pgd)   (0)
 
#define pgd_bad(pgd)   (0)
 
#define pgd_clear(pgdp)
 
#define kern_addr_valid(addr)   (1)
 
#define pmd_offset(a, b)   ((void *)0)
 
#define pmd_none(x)   (!pmd_val(x))
 
#define pmd_present(x)   (pmd_val(x))
 
#define pmd_clear(xp)   do { set_pmd(xp, __pmd(0)); } while (0)
 
#define pmd_bad(x)   (pmd_val(x) & ~PAGE_MASK)
 
#define kern_addr_valid(addr)   (1)
 
#define PAGE_NONE   __pgprot(0) /* these mean nothing to NO_MM */
 
#define PAGE_SHARED   __pgprot(0) /* these mean nothing to NO_MM */
 
#define PAGE_COPY   __pgprot(0) /* these mean nothing to NO_MM */
 
#define PAGE_READONLY   __pgprot(0) /* these mean nothing to NO_MM */
 
#define PAGE_KERNEL   __pgprot(0) /* these mean nothing to NO_MM */
 
#define pgprot_noncached(prot)   (prot)
 
#define __swp_type(x)   (0)
 
#define __swp_offset(x)   (0)
 
#define __swp_entry(typ, off)   ((swp_entry_t) { ((typ) | ((off) << 7)) })
 
#define __pte_to_swp_entry(pte)   ((swp_entry_t) { pte_val(pte) })
 
#define __swp_entry_to_pte(x)   ((pte_t) { (x).val })
 
#define set_pte(pteptr, pteval)   (*(pteptr) = pteval)
 
#define set_pte_at(mm, addr, ptep, pteval)   set_pte(ptep, pteval)
 
#define _PAGE_RD   (CPLB_USER_RD)
 
#define _PAGE_WR   (CPLB_USER_WR)
 
#define _PAGE_USER   (CPLB_USER_RD | CPLB_USER_WR)
 
#define _PAGE_ACCESSED   CPLB_ALL_ACCESS
 
#define _PAGE_DIRTY   (CPLB_DIRTY)
 
#define PTE_BIT_FUNC(fn, op)   static inline pte_t pte_##fn(pte_t _pte) { _pte.pte op; return _pte; }
 
#define ZERO_PAGE(vaddr)   virt_to_page(empty_zero_page)
 
#define swapper_pg_dir   ((pgd_t *) 0)
 
#define pgtable_cache_init()   do { } while (0)
 
#define io_remap_pfn_range   remap_pfn_range
 
#define VMALLOC_START   0
 
#define VMALLOC_END   0xffffffff
 
#define HAVE_ARCH_FB_UNMAPPED_AREA
 

Typedefs

typedef pte_tpte_addr_t
 

Functions

void paging_init (void)
 
 PTE_BIT_FUNC (rdprotect,&=~_PAGE_RD)
 
 PTE_BIT_FUNC (mkread,|=_PAGE_RD)
 
 PTE_BIT_FUNC (wrprotect,&=~_PAGE_WR)
 
 PTE_BIT_FUNC (mkwrite,|=_PAGE_WR)
 
 PTE_BIT_FUNC (exprotect,&=~_PAGE_USER)
 
 PTE_BIT_FUNC (mkexec,|=_PAGE_USER)
 
 PTE_BIT_FUNC (mkclean,&=~_PAGE_DIRTY)
 
 PTE_BIT_FUNC (mkdirty,|=_PAGE_DIRTY)
 
 PTE_BIT_FUNC (mkold,&=~_PAGE_ACCESSED)
 
 PTE_BIT_FUNC (mkyoung,|=_PAGE_ACCESSED)
 
unsigned int kobjsize (const void *objp)
 
unsigned long get_fb_unmapped_area (struct file *filp, unsigned long, unsigned long, unsigned long, unsigned long)
 

Variables

char empty_zero_page []
 

Macro Definition Documentation

#define __pte_to_swp_entry (   pte)    ((swp_entry_t) { pte_val(pte) })

Definition at line 45 of file pgtable.h.

#define __swp_entry (   typ,
  off 
)    ((swp_entry_t) { ((typ) | ((off) << 7)) })

Definition at line 44 of file pgtable.h.

#define __swp_entry_to_pte (   x)    ((pte_t) { (x).val })

Definition at line 46 of file pgtable.h.

#define __swp_offset (   x)    (0)

Definition at line 43 of file pgtable.h.

#define __swp_type (   x)    (0)

Definition at line 42 of file pgtable.h.

#define _PAGE_ACCESSED   CPLB_ALL_ACCESS

Definition at line 62 of file pgtable.h.

#define _PAGE_DIRTY   (CPLB_DIRTY)

Definition at line 63 of file pgtable.h.

#define _PAGE_RD   (CPLB_USER_RD)

Definition at line 59 of file pgtable.h.

#define _PAGE_USER   (CPLB_USER_RD | CPLB_USER_WR)

Definition at line 61 of file pgtable.h.

#define _PAGE_WR   (CPLB_USER_WR)

Definition at line 60 of file pgtable.h.

#define HAVE_ARCH_FB_UNMAPPED_AREA

Definition at line 106 of file pgtable.h.

#define io_remap_pfn_range   remap_pfn_range

Definition at line 93 of file pgtable.h.

#define kern_addr_valid (   addr)    (1)

Definition at line 31 of file pgtable.h.

#define kern_addr_valid (   addr)    (1)

Definition at line 31 of file pgtable.h.

#define PAGE_COPY   __pgprot(0) /* these mean nothing to NO_MM */

Definition at line 35 of file pgtable.h.

#define PAGE_KERNEL   __pgprot(0) /* these mean nothing to NO_MM */

Definition at line 37 of file pgtable.h.

#define PAGE_NONE   __pgprot(0) /* these mean nothing to NO_MM */

Definition at line 33 of file pgtable.h.

#define PAGE_READONLY   __pgprot(0) /* these mean nothing to NO_MM */

Definition at line 36 of file pgtable.h.

#define PAGE_SHARED   __pgprot(0) /* these mean nothing to NO_MM */

Definition at line 34 of file pgtable.h.

#define pgd_bad (   pgd)    (0)

Definition at line 21 of file pgtable.h.

#define pgd_clear (   pgdp)

Definition at line 22 of file pgtable.h.

#define pgd_none (   pgd)    (0)

Definition at line 20 of file pgtable.h.

#define pgd_present (   pgd)    (1)

Definition at line 19 of file pgtable.h.

#define pgprot_noncached (   prot)    (prot)

Definition at line 38 of file pgtable.h.

#define pgtable_cache_init (   void)    do { } while (0)

Definition at line 92 of file pgtable.h.

#define pmd_bad (   x)    (pmd_val(x) & ~PAGE_MASK)

Definition at line 29 of file pgtable.h.

#define pmd_clear (   xp)    do { set_pmd(xp, __pmd(0)); } while (0)

Definition at line 28 of file pgtable.h.

#define pmd_none (   x)    (!pmd_val(x))

Definition at line 26 of file pgtable.h.

#define pmd_offset (   a,
  b 
)    ((void *)0)

Definition at line 25 of file pgtable.h.

#define pmd_present (   x)    (pmd_val(x))

Definition at line 27 of file pgtable.h.

#define PTE_BIT_FUNC (   fn,
  op 
)    static inline pte_t pte_##fn(pte_t _pte) { _pte.pte op; return _pte; }

Definition at line 65 of file pgtable.h.

#define set_pte (   pteptr,
  pteval 
)    (*(pteptr) = pteval)

Definition at line 53 of file pgtable.h.

#define set_pte_at (   mm,
  addr,
  ptep,
  pteval 
)    set_pte(ptep, pteval)

Definition at line 54 of file pgtable.h.

#define swapper_pg_dir   ((pgd_t *) 0)

Definition at line 88 of file pgtable.h.

#define VMALLOC_END   0xffffffff

Definition at line 100 of file pgtable.h.

#define VMALLOC_START   0

Definition at line 99 of file pgtable.h.

#define ZERO_PAGE (   vaddr)    virt_to_page(empty_zero_page)

Definition at line 83 of file pgtable.h.

Typedef Documentation

typedef pte_t* pte_addr_t

Definition at line 15 of file pgtable.h.

Function Documentation

unsigned long get_fb_unmapped_area ( struct file filp,
unsigned  long,
unsigned  long,
unsigned  long,
unsigned  long 
)

Definition at line 299 of file sys_sparc_64.c.

unsigned int kobjsize ( const void objp)

Definition at line 86 of file nommu.c.

void paging_init ( void  )

paging_init - setup page tables

paging_init() sets up the page tables for each node of the system and frees the bootmem allocator memory for general use.

Definition at line 238 of file init.c.

PTE_BIT_FUNC ( rdprotect  ,
= ~_PAGE_RD 
)
PTE_BIT_FUNC ( mkread  ,
= _PAGE_RD 
)
PTE_BIT_FUNC ( wrprotect  ,
= ~_PAGE_WR 
)
PTE_BIT_FUNC ( mkwrite  ,
= _PAGE_WR 
)
PTE_BIT_FUNC ( exprotect  ,
= ~_PAGE_USER 
)
PTE_BIT_FUNC ( mkexec  ,
= _PAGE_USER 
)
PTE_BIT_FUNC ( mkclean  ,
= ~_PAGE_DIRTY 
)
PTE_BIT_FUNC ( mkdirty  ,
= _PAGE_DIRTY 
)
PTE_BIT_FUNC ( mkold  ,
= ~_PAGE_ACCESSED 
)
PTE_BIT_FUNC ( mkyoung  ,
= _PAGE_ACCESSED 
)

Variable Documentation

char empty_zero_page[]

Definition at line 42 of file mmu.c.