Hello, this is 6th version of the series. Previous version of that series at https://lists.gnu.org/archive/html/qemu-devel/2017-05/msg03117.html
(V5 -> V6) - blocktime was added into hmp command. Comment from David. - bitmap for copied pages was added as well as check in *_begin/_end functions. Patch uses just introduced RAMBLOCK_FOREACH. Comment from David. - description of receive_ufd_features/request_ufd_features. Comment from David. - commit message headers/@since references were modified. Comment from Eric. - also typos in documentation. Comment from Eric. - style and description of field in MigrationInfo. Comment from Eric. - ufd_check_and_apply (former ufd_version_check) is calling twice, so my previous patch contained double allocation of blocktime context and as a result memory leak. In this patch series it was fixed. patch set is based on commit 56821559f0ba682fe6b367815572e6f974d329ab "Merge remote-tracking branch 'dgilbert/tags/pull-hmp-20170517' into staging" Alexey Perevalov (10): userfault: add pid into uffd_msg & update UFFD_FEATURE_* migration: pass MigrationIncomingState* into migration check functions migration: fix hardcoded function name in error report migration: split ufd_version_check onto receive/request features part migration: introduce postcopy-blocktime capability migration: add postcopy blocktime ctx into MigrationIncomingState migration: add bitmap for copied page migration: calculate vCPU blocktime on dst side migration: add postcopy total blocktime into query-migrate migration: postcopy_blocktime documentation docs/migration.txt | 10 + hmp.c | 15 ++ include/migration/migration.h | 29 +++ linux-headers/linux/userfaultfd.h | 5 + migration/migration.c | 51 +++++- migration/postcopy-ram.c | 375 ++++++++++++++++++++++++++++++++++++-- migration/postcopy-ram.h | 2 +- migration/ram.c | 63 +++++++ migration/savevm.c | 2 +- migration/trace-events | 6 +- qapi-schema.json | 14 +- 11 files changed, 551 insertions(+), 21 deletions(-) -- 1.8.3.1