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~