Browse Source
Keep common MMAP-related declarations in a single place. Note, this disable ThreadSafetyAnalysis on Linux for: - mmap_fork_start() - mmap_fork_end(). Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org> Reviewed-by: Warner Losh <imp@bsdimp.com> Reviewed-by: Richard Henderson <richard.henderson@linaro.org> Message-Id: <20250308122842.76377-4-philmd@linaro.org>pull/291/head
3 changed files with 35 additions and 28 deletions
@ -0,0 +1,32 @@ |
|||
/*
|
|||
* MMAP declarations for QEMU user emulation |
|||
* |
|||
* SPDX-License-Identifier: GPL-2.0-or-later |
|||
*/ |
|||
#ifndef USER_MMAP_H |
|||
#define USER_MMAP_H |
|||
|
|||
#include "user/abitypes.h" |
|||
|
|||
/*
|
|||
* mmap_next_start: The base address for the next mmap without hint, |
|||
* increased after each successful map, starting at task_unmapped_base. |
|||
* This is an optimization within QEMU and not part of ADDR_COMPAT_LAYOUT. |
|||
*/ |
|||
extern abi_ulong mmap_next_start; |
|||
|
|||
int target_mprotect(abi_ulong start, abi_ulong len, int prot); |
|||
|
|||
abi_long target_mmap(abi_ulong start, abi_ulong len, int prot, |
|||
int flags, int fd, off_t offset); |
|||
int target_munmap(abi_ulong start, abi_ulong len); |
|||
abi_long target_mremap(abi_ulong old_addr, abi_ulong old_size, |
|||
abi_ulong new_size, unsigned long flags, |
|||
abi_ulong new_addr); |
|||
|
|||
abi_ulong mmap_find_vma(abi_ulong start, abi_ulong size, abi_ulong alignment); |
|||
|
|||
void TSA_NO_TSA mmap_fork_start(void); |
|||
void TSA_NO_TSA mmap_fork_end(int child); |
|||
|
|||
#endif |
|||
Loading…
Reference in new issue