ram migration: Stop loading on error
Besides catching real errors, this also allows to interrrupt the qemu process during restore. Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com> Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
This commit is contained in:
parent
4b640365c7
commit
9a743e5ba3
6
vl.c
6
vl.c
@ -3016,8 +3016,12 @@ static int ram_load(QEMUFile *f, void *opaque, int version_id)
|
|||||||
madvise(qemu_get_ram_ptr(addr), TARGET_PAGE_SIZE, MADV_DONTNEED);
|
madvise(qemu_get_ram_ptr(addr), TARGET_PAGE_SIZE, MADV_DONTNEED);
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
} else if (flags & RAM_SAVE_FLAG_PAGE)
|
} else if (flags & RAM_SAVE_FLAG_PAGE) {
|
||||||
qemu_get_buffer(f, qemu_get_ram_ptr(addr), TARGET_PAGE_SIZE);
|
qemu_get_buffer(f, qemu_get_ram_ptr(addr), TARGET_PAGE_SIZE);
|
||||||
|
}
|
||||||
|
if (qemu_file_has_error(f)) {
|
||||||
|
return -EIO;
|
||||||
|
}
|
||||||
} while (!(flags & RAM_SAVE_FLAG_EOS));
|
} while (!(flags & RAM_SAVE_FLAG_EOS));
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
|
Loading…
Reference in New Issue
Block a user