Message ID | 20210301161137.78941-4-david@redhat.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | softmmu/memory_mapping: optimize dump/tpm for virtio-mem | expand |
diff --git a/softmmu/memory_mapping.c b/softmmu/memory_mapping.c index 2677392de7..ad4911427a 100644 --- a/softmmu/memory_mapping.c +++ b/softmmu/memory_mapping.c @@ -230,7 +230,8 @@ static void guest_phys_blocks_region_add(MemoryListener *listener, /* we want continuity in both guest-physical and host-virtual memory */ if (predecessor->target_end < target_start || - predecessor->host_addr + predecessor_size != host_addr) { + predecessor->host_addr + predecessor_size != host_addr || + predecessor->mr != section->mr) { predecessor = NULL; } }
Let's make sure to not merge when different memory regions are involved. Unlikely, but theoretically possible. Cc: Marc-André Lureau <marcandre.lureau@redhat.com> Cc: Paolo Bonzini <pbonzini@redhat.com> Cc: "Michael S. Tsirkin" <mst@redhat.com> Cc: Alex Williamson <alex.williamson@redhat.com> Cc: Dr. David Alan Gilbert <dgilbert@redhat.com> Cc: Igor Mammedov <imammedo@redhat.com> Cc: Claudio Fontana <cfontana@suse.de> Cc: Thomas Huth <thuth@redhat.com> Cc: "Alex Bennée" <alex.bennee@linaro.org> Cc: Peter Xu <peterx@redhat.com> Cc: Laurent Vivier <lvivier@redhat.com> Cc: Stefan Berger <stefanb@linux.ibm.com> Signed-off-by: David Hildenbrand <david@redhat.com> --- softmmu/memory_mapping.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-)