kvm: Don't walk memory_size == 0 slots in kvm_client_migration_log

If we've unregistered a memory area, we should avoid calling
qemu_get_ram_ptr() on the left over phys_offset cruft in the
slot array.  Now that we support removing ramblocks, the
phys_offset ram_addr_t can go away and cause a lookup fault
and abort.

Signed-off-by: Alex Williamson <alex.williamson@redhat.com>
Signed-off-by: Marcelo Tosatti <mtosatti@redhat.com>
This commit is contained in:
Alex Williamson 2010-07-14 13:36:49 -06:00 committed by Marcelo Tosatti
parent 748a4ee311
commit 70fedd76d9

View File

@ -274,6 +274,9 @@ static int kvm_set_migration_log(int enable)
for (i = 0; i < ARRAY_SIZE(s->slots); i++) { for (i = 0; i < ARRAY_SIZE(s->slots); i++) {
mem = &s->slots[i]; mem = &s->slots[i];
if (!mem->memory_size) {
continue;
}
if (!!(mem->flags & KVM_MEM_LOG_DIRTY_PAGES) == enable) { if (!!(mem->flags & KVM_MEM_LOG_DIRTY_PAGES) == enable) {
continue; continue;
} }