This fixes a crash caused by picking the wrong memory region in address_space_lookup_region seen with client code accessing a device model that uses alias memory regions.
Signed-off-by: BALATON Zoltan <bala...@eik.bme.hu> --- exec.c | 1 + 1 file changed, 1 insertion(+) diff --git a/exec.c b/exec.c index 97a24a8..e5f2b9a 100644 --- a/exec.c +++ b/exec.c @@ -413,6 +413,7 @@ static MemoryRegionSection *address_space_lookup_region(AddressSpaceDispatch *d, bool update; if (section && section != &d->map.sections[PHYS_SECTION_UNASSIGNED] && + (resolve_subpage || !section->offset_within_region) && section_covers_addr(section, addr)) { update = false; } else { -- 2.7.6