diff options
| author | Richard Henderson <richard.henderson@linaro.org> | 2023-08-02 14:29:40 -0700 |
|---|---|---|
| committer | Richard Henderson <richard.henderson@linaro.org> | 2023-08-08 13:24:27 -0700 |
| commit | 2d708164e0475064e0e2167bd73e8570e22df1e0 (patch) | |
| tree | f17712dd84f0ac07f6640ceee314fca2259bfe81 /linux-user/sparc | |
| parent | c8fb5cf97da11af11def1e910920c9ead03c304a (diff) | |
| download | focaccia-qemu-2d708164e0475064e0e2167bd73e8570e22df1e0.tar.gz focaccia-qemu-2d708164e0475064e0e2167bd73e8570e22df1e0.zip | |
linux-user: Define TASK_UNMAPPED_BASE in $guest/target_mman.h
Provide default values that are as close as possible to the values used by the guest's kernel. Tested-by: Helge Deller <deller@gmx.de> Reviewed-by: Helge Deller <deller@gmx.de> Reviewed-by: Akihiko Odaki <akihiko.odaki@daynix.com> Reviewed-by: Alex Bennée <alex.bennee@linaro.org> Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
Diffstat (limited to 'linux-user/sparc')
| -rw-r--r-- | linux-user/sparc/target_mman.h | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/linux-user/sparc/target_mman.h b/linux-user/sparc/target_mman.h index 9bad99c852..692ebf9dd7 100644 --- a/linux-user/sparc/target_mman.h +++ b/linux-user/sparc/target_mman.h @@ -5,6 +5,20 @@ #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 + #include "../generic/target_mman.h" #endif |