da2b71fab6
Copy each guest kernel's default value, then bound it against reserved_va or the host address space. Tested-by: Helge Deller <deller@gmx.de> Reviewed-by: Helge Deller <deller@gmx.de> Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
36 lines
961 B
C
36 lines
961 B
C
#ifndef SPARC_TARGET_MMAN_H
|
|
#define SPARC_TARGET_MMAN_H
|
|
|
|
#define TARGET_MAP_NORESERVE 0x40
|
|
#define TARGET_MAP_LOCKED 0x100
|
|
#define TARGET_MAP_GROWSDOWN 0x0200
|
|
|
|
/*
|
|
* arch/sparc/include/asm/page_64.h:
|
|
* TASK_UNMAPPED_BASE (test_thread_flag(TIF_32BIT) ? \
|
|
* _AC(0x0000000070000000,UL) : \
|
|
* VA_EXCLUDE_END)
|
|
* But VA_EXCLUDE_END is > 0xffff800000000000UL which doesn't work
|
|
* in userland emulation.
|
|
*/
|
|
#ifdef TARGET_ABI32
|
|
#define TASK_UNMAPPED_BASE 0x70000000
|
|
#else
|
|
#define TASK_UNMAPPED_BASE (1ull << (TARGET_VIRT_ADDR_SPACE_BITS - 2))
|
|
#endif
|
|
|
|
/*
|
|
* arch/sparc/include/asm/elf_64.h
|
|
* Except that COMPAT_ELF_ET_DYN_BASE exactly matches TASK_UNMAPPED_BASE,
|
|
* so move it up a bit.
|
|
*/
|
|
#ifdef TARGET_ABI32
|
|
#define ELF_ET_DYN_BASE 0x78000000
|
|
#else
|
|
#define ELF_ET_DYN_BASE 0x0000010000000000ull
|
|
#endif
|
|
|
|
#include "../generic/target_mman.h"
|
|
|
|
#endif
|