mirror of
https://github.com/Motorhead1991/qemu.git
synced 2025-08-22 09:32:40 -06:00
bsd-user: Always use mmap_find_vma_aligned() in target_mmap()
Massage target_mmap(): calculate alignment once, then unconditionally call mmap_find_vma_aligned(). Reviewed-by: Richard Henderson <richard.henderson@linaro.org> Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org> Reviewed-by: Warner Losh <imp@bsdimp.com> Message-Id: <20250308122842.76377-2-philmd@linaro.org>
This commit is contained in:
parent
c9ce8a1ffd
commit
019b4e84ed
1 changed files with 4 additions and 5 deletions
|
@ -489,13 +489,12 @@ abi_long target_mmap(abi_ulong start, abi_ulong len, int prot,
|
||||||
* before we truncate the length for mapping files below.
|
* before we truncate the length for mapping files below.
|
||||||
*/
|
*/
|
||||||
if (!(flags & MAP_FIXED)) {
|
if (!(flags & MAP_FIXED)) {
|
||||||
|
abi_ulong alignment;
|
||||||
|
|
||||||
host_len = len + offset - host_offset;
|
host_len = len + offset - host_offset;
|
||||||
host_len = HOST_PAGE_ALIGN(host_len);
|
host_len = HOST_PAGE_ALIGN(host_len);
|
||||||
if ((flags & MAP_ALIGNMENT_MASK) != 0)
|
alignment = (flags & MAP_ALIGNMENT_MASK) >> MAP_ALIGNMENT_SHIFT;
|
||||||
start = mmap_find_vma_aligned(real_start, host_len,
|
start = mmap_find_vma_aligned(real_start, host_len, alignment);
|
||||||
(flags & MAP_ALIGNMENT_MASK) >> MAP_ALIGNMENT_SHIFT);
|
|
||||||
else
|
|
||||||
start = mmap_find_vma(real_start, host_len);
|
|
||||||
if (start == (abi_ulong)-1) {
|
if (start == (abi_ulong)-1) {
|
||||||
errno = ENOMEM;
|
errno = ENOMEM;
|
||||||
goto fail;
|
goto fail;
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue