]> git.ipfire.org Git - thirdparty/libvirt.git/commit
libxl: add p2p migration
authorJoao Martins <joao.m.martins@oracle.com>
Fri, 5 Feb 2016 20:45:02 +0000 (20:45 +0000)
committerJim Fehlig <jfehlig@suse.com>
Wed, 10 Feb 2016 03:26:54 +0000 (20:26 -0700)
commita79da2457ec61cb9932502e498099d973d00fe38
treef9c44b5e08e7d934af1dbb8af8647812cc5b3a80
parent5a1ccaeb00d3cba7727b7022587f77b4fd2edd2b
libxl: add p2p migration

Introduce support for VIR_MIGRATE_PEER2PEER in libvirt migration.
Most of the changes occur at the source and no modifications at
the receiver.

In P2P mode there is only the Perform phase so we must handle the
connection with the destination and actually perform the
migration. libxlDomainPerformP2P implements the connection to the
destination and libxlDoMigrateP2P implements the actual migration
logic with virConnectPtr. In this function we take care of doing
all phases of migration in the destination similar to
virDomainMigrateVersion3Full. We appropriately save the last
error reported in each of the phases to provide proper reporting.
We don't yet support VIR_MIGRATE_TUNNELED and we always use V3
with extensible params, thus it also makes the implementation
simpler.

It is worth noting that the receiver didn't have any changes, and
since it's still the v3 sequence thus it is possible to migrate
from a P2P to non-P2P host.

Signed-off-by: Joao Martins <joao.m.martins@oracle.com>
src/libxl/libxl_driver.c
src/libxl/libxl_migration.c
src/libxl/libxl_migration.h