aboutsummaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorGonglei (Arei) <arei.gonglei@huawei.com>2014-01-30 20:08:35 +0200
committerJuan Quintela <quintela@redhat.com>2014-02-04 16:49:24 +0100
commit905f26f2221e139ac0e7317ddac158c50f5cf876 (patch)
tree420e6d998f90b84df75f6366d16fb6b6871d4761 /include
parentc91e681a558fc21073ffc491b5a022d5f340fa0b (diff)
migration:fix free XBZRLE decoded_buf wrong
When qemu do live migration with xbzrle, qemu malloc decoded_buf at destination end but free it at source end. It will crash qemu by double free error in some scenarios. Splitting the XBZRLE structure for clear logic distinguishing src/dst side. Signed-off-by: ChenLiang <chenliang88@huawei.com> Reviewed-by: Peter Maydell <peter.maydell@linaro.org> Reviewed-by: Orit Wasserman <owasserm@redhat.com> Signed-off-by: GongLei <arei.gonglei@huawei.com> Signed-off-by: Juan Quintela <quintela@redhat.com>
Diffstat (limited to 'include')
-rw-r--r--include/migration/migration.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/include/migration/migration.h b/include/migration/migration.h
index bfa3951a61..3e1e6c72bf 100644
--- a/include/migration/migration.h
+++ b/include/migration/migration.h
@@ -109,6 +109,7 @@ MigrationState *migrate_get_current(void);
uint64_t ram_bytes_remaining(void);
uint64_t ram_bytes_transferred(void);
uint64_t ram_bytes_total(void);
+void free_xbzrle_decoded_buf(void);
void acct_update_position(QEMUFile *f, size_t size, bool zero);