diff options
| author | Ivan Ren | 2019-06-25 15:18:17 +0200 |
|---|---|---|
| committer | Juan Quintela | 2019-07-24 14:46:51 +0200 |
| commit | 713f762a316348b00f5a3713b5314c88ab0a5852 (patch) | |
| tree | ef75edf4f63d222e255d2986186f39216015a260 /python | |
| parent | Update version for v4.1.0-rc2 release (diff) | |
| download | qemu-713f762a316348b00f5a3713b5314c88ab0a5852.tar.gz qemu-713f762a316348b00f5a3713b5314c88ab0a5852.tar.xz qemu-713f762a316348b00f5a3713b5314c88ab0a5852.zip | |
migration: fix migrate_cancel leads live_migration thread endless loop
When we 'migrate_cancel' a multifd migration, live_migration thread may
go into endless loop in multifd_send_pages functions.
Reproduce steps:
(qemu) migrate_set_capability multifd on
(qemu) migrate -d url
(qemu) [wait a while]
(qemu) migrate_cancel
Then may get live_migration 100% cpu usage in following stack:
pthread_mutex_lock
qemu_mutex_lock_impl
multifd_send_pages
multifd_queue_page
ram_save_multifd_page
ram_save_target_page
ram_save_host_page
ram_find_and_save_block
ram_find_and_save_block
ram_save_iterate
qemu_savevm_state_iterate
migration_iteration_run
migration_thread
qemu_thread_start
start_thread
clone
Signed-off-by: Ivan Ren <ivanren@tencent.com>
Message-Id: <1561468699-9819-2-git-send-email-ivanren@tencent.com>
Reviewed-by: Dr. David Alan Gilbert <dgilbert@redhat.com>
Reviewed-by: Juan Quintela <quintela@redhat.com>
Signed-off-by: Juan Quintela <quintela@redhat.com>
Diffstat (limited to 'python')
0 files changed, 0 insertions, 0 deletions
