OSDN Git Service

migration: calculate vCPU blocktime on dst side
authorAlexey Perevalov <a.perevalov@samsung.com>
Thu, 22 Mar 2018 18:17:24 +0000 (21:17 +0300)
committerDr. David Alan Gilbert <dgilbert@redhat.com>
Wed, 25 Apr 2018 17:02:13 +0000 (18:02 +0100)
commit575b0b332ea25986fd348c45a91e642bca912137
treebacbd1edb31dd50e5274ec17fe5c833b816bac93
parent2a4c42f18c987496c2c48764d4785a9d6448874a
migration: calculate vCPU blocktime on dst side

This patch provides blocktime calculation per vCPU,
as a summary and as a overlapped value for all vCPUs.

This approach was suggested by Peter Xu, as an improvements of
previous approch where QEMU kept tree with faulted page address and cpus bitmask
in it. Now QEMU is keeping array with faulted page address as value and vCPU
as index. It helps to find proper vCPU at UFFD_COPY time. Also it keeps
list for blocktime per vCPU (could be traced with page_fault_addr)

Blocktime will not calculated if postcopy_blocktime field of
MigrationIncomingState wasn't initialized.

Signed-off-by: Alexey Perevalov <a.perevalov@samsung.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>
Message-Id: <1521742647-25550-4-git-send-email-a.perevalov@samsung.com>
Signed-off-by: Dr. David Alan Gilbert <dgilbert@redhat.com>
migration/postcopy-ram.c
migration/trace-events