arch/hexagon/mm/init.c

Source file repositories/reference/linux-study-clean/arch/hexagon/mm/init.c

File Facts

System
Linux kernel
Corpus path
arch/hexagon/mm/init.c
Extension
.c
Size
7545 bytes
Lines
245
Domain
Architecture Layer
Bucket
arch/hexagon
Inferred role
Architecture Layer: implementation source
Status
source implementation candidate

Why This File Exists

CPU and platform-specific kernel glue: boot entry, traps, syscall entry, interrupts, page tables, context switch, and low-level barriers.

Dependency Surface

Detected Declarations

Annotated Snippet

*  which is called by start_kernel() later on in the process
	 */
}

static const pgprot_t protection_map[16] = {
	[VM_NONE]					= __pgprot(_PAGE_PRESENT | _PAGE_USER |
								   CACHEDEF),
	[VM_READ]					= __pgprot(_PAGE_PRESENT | _PAGE_USER |
								   _PAGE_READ | CACHEDEF),
	[VM_WRITE]					= __pgprot(_PAGE_PRESENT | _PAGE_USER |
								   CACHEDEF),
	[VM_WRITE | VM_READ]				= __pgprot(_PAGE_PRESENT | _PAGE_USER |
								   _PAGE_READ | CACHEDEF),
	[VM_EXEC]					= __pgprot(_PAGE_PRESENT | _PAGE_USER |
								   _PAGE_EXECUTE | CACHEDEF),
	[VM_EXEC | VM_READ]				= __pgprot(_PAGE_PRESENT | _PAGE_USER |
								   _PAGE_EXECUTE | _PAGE_READ |
								   CACHEDEF),
	[VM_EXEC | VM_WRITE]				= __pgprot(_PAGE_PRESENT | _PAGE_USER |
								   _PAGE_EXECUTE | CACHEDEF),
	[VM_EXEC | VM_WRITE | VM_READ]			= __pgprot(_PAGE_PRESENT | _PAGE_USER |
								   _PAGE_EXECUTE | _PAGE_READ |
								   CACHEDEF),
	[VM_SHARED]                                     = __pgprot(_PAGE_PRESENT | _PAGE_USER |
								   CACHEDEF),
	[VM_SHARED | VM_READ]				= __pgprot(_PAGE_PRESENT | _PAGE_USER |
								   _PAGE_READ | CACHEDEF),
	[VM_SHARED | VM_WRITE]				= __pgprot(_PAGE_PRESENT | _PAGE_USER |
								   _PAGE_WRITE | CACHEDEF),
	[VM_SHARED | VM_WRITE | VM_READ]		= __pgprot(_PAGE_PRESENT | _PAGE_USER |
								   _PAGE_READ | _PAGE_WRITE |
								   CACHEDEF),
	[VM_SHARED | VM_EXEC]				= __pgprot(_PAGE_PRESENT | _PAGE_USER |
								   _PAGE_EXECUTE | CACHEDEF),
	[VM_SHARED | VM_EXEC | VM_READ]			= __pgprot(_PAGE_PRESENT | _PAGE_USER |
								   _PAGE_EXECUTE | _PAGE_READ |
								   CACHEDEF),
	[VM_SHARED | VM_EXEC | VM_WRITE]		= __pgprot(_PAGE_PRESENT | _PAGE_USER |
								   _PAGE_EXECUTE | _PAGE_WRITE |
								   CACHEDEF),
	[VM_SHARED | VM_EXEC | VM_WRITE | VM_READ]	= __pgprot(_PAGE_PRESENT | _PAGE_USER |
								   _PAGE_READ | _PAGE_EXECUTE |
								   _PAGE_WRITE | CACHEDEF)
};
DECLARE_VM_GET_PAGE_PROT

Annotation

Implementation Notes