[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH v3 28/30] tcg: Fix off-by-one in assert in page_set_
From: |
Richard Henderson |
Subject: |
[Qemu-devel] [PATCH v3 28/30] tcg: Fix off-by-one in assert in page_set_flags |
Date: |
Tue, 18 Jul 2017 10:02:53 -1000 |
Most of the users of page_set_flags offset (page, page + len) as
the end points. One might consider this an error, since the other
users do supply an endpoint as the last byte of the region.
However, the first thing that page_set_flags does is round end UP
to the start of the next page. Which means computing page + len - 1
is in the end pointless. Therefore, accept this usage and do not
assert when given the exact size of the vm as the endpoint.
Reviewed-by: Philippe Mathieu-Daudé <address@hidden>
Signed-off-by: Richard Henderson <address@hidden>
---
accel/tcg/translate-all.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/accel/tcg/translate-all.c b/accel/tcg/translate-all.c
index 4e1831c..f304ee1 100644
--- a/accel/tcg/translate-all.c
+++ b/accel/tcg/translate-all.c
@@ -2063,7 +2063,7 @@ void page_set_flags(target_ulong start, target_ulong end,
int flags)
guest address space. If this assert fires, it probably indicates
a missing call to h2g_valid. */
#if TARGET_ABI_BITS > L1_MAP_ADDR_SPACE_BITS
- assert(end < ((target_ulong)1 << L1_MAP_ADDR_SPACE_BITS));
+ assert(end <= ((target_ulong)1 << L1_MAP_ADDR_SPACE_BITS));
#endif
assert(start < end);
assert_memory_lock();
--
2.9.4
- [Qemu-devel] [PATCH v3 15/30] target/sh4: Merge DREG into fpr64 routines, (continued)
- [Qemu-devel] [PATCH v3 15/30] target/sh4: Merge DREG into fpr64 routines, Richard Henderson, 2017/07/18
- [Qemu-devel] [PATCH v3 19/30] target/sh4: Unify code for CHECK_PRIVILEGED, Richard Henderson, 2017/07/18
- [Qemu-devel] [PATCH v3 20/30] target/sh4: Unify code for CHECK_FPU_ENABLED, Richard Henderson, 2017/07/18
- [Qemu-devel] [PATCH v3 21/30] target/sh4: Tidy misc illegal insn checks, Richard Henderson, 2017/07/18
- [Qemu-devel] [PATCH v3 22/30] target/sh4: Introduce CHECK_FPSCR_PR_*, Richard Henderson, 2017/07/18
- [Qemu-devel] [PATCH v3 24/30] target/sh4: Implement fpchg, Richard Henderson, 2017/07/18
- [Qemu-devel] [PATCH v3 23/30] target/sh4: Introduce CHECK_SH4A, Richard Henderson, 2017/07/18
- [Qemu-devel] [PATCH v3 25/30] target/sh4: Add missing FPSCR.PR == 0 checks, Richard Henderson, 2017/07/18
- [Qemu-devel] [PATCH v3 26/30] target/sh4: Implement fsrra, Richard Henderson, 2017/07/18
- [Qemu-devel] [PATCH v3 27/30] target/sh4: Use tcg_gen_lookup_and_goto_ptr, Richard Henderson, 2017/07/18
- [Qemu-devel] [PATCH v3 28/30] tcg: Fix off-by-one in assert in page_set_flags,
Richard Henderson <=
- [Qemu-devel] [PATCH v3 30/30] linux-user/sh4: Reduce TARGET_VIRT_ADDR_SPACE_BITS to 31, Richard Henderson, 2017/07/18
- [Qemu-devel] [PATCH v3 29/30] linux-user: Tidy and enforce reserved_va initialization, Richard Henderson, 2017/07/18
- Re: [Qemu-devel] [PATCH v3 00/30] target/sh4 improvements, Aurelien Jarno, 2017/07/18