#ifndef __ASSEMBLY__ /* * ZERO_PAGE is a global shared page that is always zero: used * for zero-mapped memory areas etc..
*/ externstruct page *empty_zero_page; #define ZERO_PAGE(vaddr) (empty_zero_page) #endif
/* * Just any arbitrary offset to the start of the vmalloc VM area: the * current 8MB value just means that there will be a 8MB "hole" after the * physical memory until the kernel virtual memory starts. That means that * any out-of-bounds memory accesses will hopefully be caught. * The vmalloc() routines leaves a hole of 4kB between each vmalloced * area for the same reason. ;)
*/ #define VMALLOC_OFFSET (8*1024*1024) #define VMALLOC_START (((unsignedlong)high_memory + VMALLOC_OFFSET) & ~(VMALLOC_OFFSET-1)) #define VMALLOC_END 0xff800000UL
#define LIBRARY_TEXT_START 0x0c000000
#ifndef __ASSEMBLY__ externvoid __pte_error(constchar *file, int line, pte_t); externvoid __pmd_error(constchar *file, int line, pmd_t); externvoid __pgd_error(constchar *file, int line, pgd_t);
/* * This is the lowest virtual address we can permit any user space * mapping to be mapped at. This is particularly important for * non-high vector CPUs.
*/ #define FIRST_USER_ADDRESS (PAGE_SIZE * 2)
/* * Use TASK_SIZE as the ceiling argument for free_pgtables() and * free_pgd_range() to avoid freeing the modules pmd when LPAE is enabled (pmd * page shared between user and kernel).
*/ #ifdef CONFIG_ARM_LPAE #define USER_PGTABLES_CEILING TASK_SIZE #endif
/* * The pgprot_* and protection_map entries will be fixed up in runtime * to include the cachable and bufferable bits based on memory policy, * as well as any architecture dependent bits like global/ASID and SMP * shared mapping bits.
*/ #define _L_PTE_DEFAULT L_PTE_PRESENT | L_PTE_YOUNG
/* * The table below defines the page protection levels that we insert into our * Linux page table version. These get translated into the best that the * architecture can perform. Note that on most ARM hardware: * 1) We cannot do execute protection * 2) If we could do execute protection, then read is implied * 3) write implies read permissions
*/
/* * It is an error for the kernel to have more swap files than we can * encode in the PTEs. This ensures that we know when MAX_SWAPFILES * is increased beyond what we presently support.
*/ #define MAX_SWAPFILES_CHECK() BUILD_BUG_ON(MAX_SWAPFILES_SHIFT > __SWP_TYPE_BITS)
/* * We provide our own arch_get_unmapped_area to cope with VIPT caches.
*/ #define HAVE_ARCH_UNMAPPED_AREA #define HAVE_ARCH_UNMAPPED_AREA_TOPDOWN
#endif/* !__ASSEMBLY__ */
#endif/* CONFIG_MMU */
#endif/* _ASMARM_PGTABLE_H */
Messung V0.5
¤ Dauer der Verarbeitung: 0.10 Sekunden
(vorverarbeitet)
¤
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.