qemu-riscv
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH 08/13] target/riscv: Fix check range for first fault only


From: Richard Henderson
Subject: Re: [PATCH 08/13] target/riscv: Fix check range for first fault only
Date: Mon, 1 Nov 2021 09:41:12 -0400
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101 Thunderbird/78.13.0

On 11/1/21 6:01 AM, LIU Zhiwei wrote:
Only check the range that has passed the address translation.

Signed-off-by: LIU Zhiwei <zhiwei_liu@c-sky.com>
---
  target/riscv/vector_helper.c | 4 ++--
  1 file changed, 2 insertions(+), 2 deletions(-)

Reviewed-by: Richard Henderson <richard.henderson@linaro.org>


@@ -638,12 +638,12 @@ vext_ldff(void *vd, void *v0, target_ulong base,
                                           cpu_mmu_index(env, false));
                  if (host) {
  #ifdef CONFIG_USER_ONLY
-                    if (page_check_range(addr, nf * msz, PAGE_READ) < 0) {
+                    if (page_check_range(addr, offset, PAGE_READ) < 0) {
                          vl = i;
                          goto ProbeSuccess;
                      }
  #else
-                    probe_pages(env, addr, nf * msz, ra, MMU_DATA_LOAD);
+                    probe_pages(env, addr, offset, ra, MMU_DATA_LOAD);
  #endif

It looks like we could lose the ifdef here and always use probe_pages.
But that of course is a different change.


r~




reply via email to

[Prev in Thread] Current Thread [Next in Thread]