diff --git a/exec.c b/exec.c index d00e017e19e08dc699cacf4ff2fe95621c6d6b06..f7883d22469b61572b35e6ea7bfad1f22220b4bf 100644 --- a/exec.c +++ b/exec.c @@ -353,7 +353,7 @@ address_space_translate_internal(AddressSpaceDispatch *d, hwaddr addr, hwaddr *x mr = section->mr; if (memory_region_is_ram(mr)) { - diff = int128_sub(mr->size, int128_make64(addr)); + diff = int128_sub(section->size, int128_make64(addr)); *plen = int128_get64(int128_min(diff, int128_make64(*plen))); } return section;