[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH v4 18/36] linux-user: Fix sub-host-page mmap
From: |
Richard Henderson |
Subject: |
[PATCH v4 18/36] linux-user: Fix sub-host-page mmap |
Date: |
Wed, 14 Feb 2024 20:20:00 -1000 |
We cannot skip over the_end1 to the_end, because we fail to
record the validity of the guest page with the interval tree.
Remove "the_end" and rename "the_end1" to "the_end".
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
Reviewed-by: Pierrick Bouvier <pierrick.bouvier@linaro.org>
Reviewed-by: Ilya Leoshkevich <iii@linux.ibm.com>
Acked-by: Helge Deller <deller@gmx.de>
Message-Id: <20240102015808.132373-19-richard.henderson@linaro.org>
---
linux-user/mmap.c | 5 ++---
1 file changed, 2 insertions(+), 3 deletions(-)
diff --git a/linux-user/mmap.c b/linux-user/mmap.c
index fbaea832c5..48fcdd4a32 100644
--- a/linux-user/mmap.c
+++ b/linux-user/mmap.c
@@ -643,7 +643,7 @@ static abi_long target_mmap__locked(abi_ulong start,
abi_ulong len,
target_prot, flags, fd, offset)) {
return -1;
}
- goto the_end1;
+ goto the_end;
}
if (!mmap_frag(real_start, start,
real_start + host_page_size - 1,
@@ -690,7 +690,7 @@ static abi_long target_mmap__locked(abi_ulong start,
abi_ulong len,
passthrough_last = real_last;
}
}
- the_end1:
+ the_end:
if (flags & MAP_ANONYMOUS) {
page_flags |= PAGE_ANON;
}
@@ -708,7 +708,6 @@ static abi_long target_mmap__locked(abi_ulong start,
abi_ulong len,
}
}
shm_region_rm_complete(start, last);
- the_end:
trace_target_mmap_complete(start);
if (qemu_loglevel_mask(CPU_LOG_PAGE)) {
FILE *f = qemu_log_trylock();
--
2.34.1
- [PATCH v4 09/36] linux-user: Remove REAL_HOST_PAGE_ALIGN from mmap.c, (continued)
- [PATCH v4 09/36] linux-user: Remove REAL_HOST_PAGE_ALIGN from mmap.c, Richard Henderson, 2024/02/15
- [PATCH v4 10/36] linux-user: Remove HOST_PAGE_ALIGN from mmap.c, Richard Henderson, 2024/02/15
- [PATCH v4 11/36] migration: Remove qemu_host_page_size, Richard Henderson, 2024/02/15
- [PATCH v4 14/36] softmmu/physmem: Remove HOST_PAGE_ALIGN, Richard Henderson, 2024/02/15
- [PATCH v4 13/36] softmmu/physmem: Remove qemu_host_page_size, Richard Henderson, 2024/02/15
- [PATCH v4 16/36] linux-user: Split out target_mmap__locked, Richard Henderson, 2024/02/15
- [PATCH v4 17/36] linux-user: Move some mmap checks outside the lock, Richard Henderson, 2024/02/15
- [PATCH v4 12/36] hw/tpm: Remove HOST_PAGE_ALIGN from tpm_ppi_init, Richard Henderson, 2024/02/15
- [PATCH v4 08/36] linux-user: Remove qemu_host_page_{size, mask} from mmap.c, Richard Henderson, 2024/02/15
- [PATCH v4 15/36] linux-user: Remove qemu_host_page_size from main, Richard Henderson, 2024/02/15
- [PATCH v4 18/36] linux-user: Fix sub-host-page mmap,
Richard Henderson <=
- [PATCH v4 19/36] linux-user: Split out mmap_end, Richard Henderson, 2024/02/15
- [PATCH v4 21/36] linux-user: Split out do_munmap, Richard Henderson, 2024/02/15
- [PATCH v4 22/36] linux-user: Use do_munmap for target_mmap failure, Richard Henderson, 2024/02/15
- [PATCH v4 20/36] linux-user: Do early mmap placement only for reserved_va, Richard Henderson, 2024/02/15
- [PATCH v4 23/36] linux-user: Split out mmap_h_eq_g, Richard Henderson, 2024/02/15
- [PATCH v4 24/36] linux-user: Split out mmap_h_lt_g, Richard Henderson, 2024/02/15
- [PATCH v4 25/36] linux-user: Split out mmap_h_gt_g, Richard Henderson, 2024/02/15
- [PATCH v4 26/36] tests/tcg: Remove run-test-mmap-*, Richard Henderson, 2024/02/15