mirror of
https://github.com/Motorhead1991/qemu.git
synced 2025-07-28 21:03:54 -06:00

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>
32 lines
1,001 B
C
32 lines
1,001 B
C
/*
|
|
* 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
|