Hi two items:
- Postcopy pull request (dave) - fix for qemu_completion (Denis) Please apply. Thanks, Juan. The following changes since commit ce278618b088afd10b91a05311eaeb6401bb5004: configure: Don't disable optimization for non-fortify builds (2015-11-09 16:28:09 +0000) are available in the git repository at: git://github.com/juanquintela/qemu.git tags/migration/20151109 for you to fetch changes up to d1de612d6ed199a52a6f4823d89c1731c74edcb6: migration: qemu_savevm_state_cleanup becomes mandatory operation (2015-11-09 18:26:06 +0100) ---------------------------------------------------------------- migration/next for 20151109 ---------------------------------------------------------------- Denis V. Lunev (1): migration: qemu_savevm_state_cleanup becomes mandatory operation Dr. David Alan Gilbert (56): Add postcopy documentation Provide runtime Target page information Move configuration section writing Move page_size_init earlier qemu_ram_block_from_host qemu_ram_block_by_name Rename mis->file to from_src_file Add qemu_get_buffer_in_place to avoid copies some of the time Add wrapper for setting blocking status on a QEMUFile Add QEMU_MADV_NOHUGEPAGE ram_debug_dump_bitmap: Dump a migration bitmap as text ram_load: Factor out host_from_stream_offset call and check migrate_init: Call from savevm Rename save_live_complete to save_live_complete_precopy Add Linux userfaultfd.h header Return path: Open a return path on QEMUFile for sockets Return path: socket_writev_buffer: Block even on non-blocking fd's Migration commands Return path: Control commands Return path: Send responses from destination to source migration_is_setup_or_active Return path: Source handling of return path Rework loadvm path for subloops Add migration-capability boolean for postcopy-ram. Add wrappers and handlers for sending/receiving the postcopy-ram migration messages. MIG_CMD_PACKAGED: Send a packaged chunk of migration stream Modify save_live_pending for postcopy postcopy: OS support test migrate_start_postcopy: Command to trigger transition to postcopy migration_completion: Take current state MIGRATION_STATUS_POSTCOPY_ACTIVE: Add new migration state Avoid sending vmdescription during postcopy Add qemu_savevm_state_complete_postcopy Postcopy: Maintain unsentmap migration_completion: Take current state postcopy: Incoming initialisation postcopy: ram_enable_notify to switch on userfault Postcopy: Postcopy startup in migration thread Postcopy: End of iteration Page request: Add MIG_RP_MSG_REQ_PAGES reverse command Page request: Process incoming page request Page request: Consume pages off the post-copy queue postcopy_ram.c: place_page and helpers Postcopy: Use helpers to map pages during migration postcopy: Check order of received target pages Don't sync dirty bitmaps in postcopy Don't iterate on precopy-only devices during postcopy Host page!=target page: Cleanup bitmaps Round up RAMBlock sizes to host page sizes Postcopy; Handle userfault requests Start up a postcopy/listener thread ready for incoming page data postcopy: Wire up loadvm_postcopy_handle_ commands Postcopy: Mark nohugepage before discard End of migration for postcopy Disable mlock around incoming postcopy Inhibit ballooning during postcopy balloon.c | 11 + docs/migration.txt | 191 ++++++++ exec.c | 92 +++- hmp-commands.hx | 15 + hmp.c | 7 + hmp.h | 1 + hw/ppc/spapr.c | 2 +- hw/virtio/virtio-balloon.c | 4 +- include/exec/cpu-common.h | 4 + include/exec/exec-all.h | 1 - include/exec/ram_addr.h | 2 - include/migration/migration.h | 121 ++++- include/migration/postcopy-ram.h | 99 ++++ include/migration/qemu-file.h | 10 + include/migration/vmstate.h | 8 +- include/qemu-common.h | 1 + include/qemu/osdep.h | 9 + include/qemu/typedefs.h | 3 + include/sysemu/balloon.h | 2 + include/sysemu/sysemu.h | 46 +- kvm-all.c | 1 - linux-headers/linux/userfaultfd.h | 167 +++++++ migration/Makefile.objs | 2 +- migration/block.c | 9 +- migration/migration.c | 723 +++++++++++++++++++++++++-- migration/postcopy-ram.c | 767 +++++++++++++++++++++++++++++ migration/qemu-file-unix.c | 111 ++++- migration/qemu-file.c | 64 +++ migration/ram.c | 999 +++++++++++++++++++++++++++++++++++--- migration/savevm.c | 825 +++++++++++++++++++++++++++---- qapi-schema.json | 18 +- qmp-commands.hx | 19 + qtest.c | 1 - trace-events | 84 +++- vl.c | 1 + 35 files changed, 4168 insertions(+), 252 deletions(-) create mode 100644 include/migration/postcopy-ram.h create mode 100644 linux-headers/linux/userfaultfd.h create mode 100644 migration/postcopy-ram.c