This flag may be used with migration APIs to request compression of
migration data.
---
include/libvirt/libvirt.h.in | 1 +
tools/virsh-domain.c | 8 ++++++++
tools/virsh.pod | 6 ++++--
3 files changed, 13 insertions(+), 2 deletions(-)
diff --git a/include/libvirt/libvirt.h.in b/include/libvirt/libvirt.h.in
index ad30cd0..eda9e12 100644
--- a/include/libvirt/libvirt.h.in
+++ b/include/libvirt/libvirt.h.in
@@ -1187,6 +1187,7 @@ typedef enum {
* when supported */
VIR_MIGRATE_UNSAFE = (1 << 9), /* force migration even if it is
considered unsafe */
VIR_MIGRATE_OFFLINE = (1 << 10), /* offline migrate */
+ VIR_MIGRATE_COMPRESSED = (1 << 11), /* compress data during migration
*/
} virDomainMigrateFlags;
/* Domain migration. */
diff --git a/tools/virsh-domain.c b/tools/virsh-domain.c
index 3e4be89..f8b0cec 100644
--- a/tools/virsh-domain.c
+++ b/tools/virsh-domain.c
@@ -8340,6 +8340,11 @@ static const vshCmdOptDef opts_migrate[] = {
.flags = 0,
.help = N_("display the progress of migration")
},
+ {.name = "compressed",
+ .type = VSH_OT_BOOL,
+ .flags = 0,
+ .help = N_("compress repeated pages during live migration")
+ },
{.name = "domain",
.type = VSH_OT_DATA,
.flags = VSH_OFLAG_REQ,
@@ -8430,6 +8435,9 @@ doMigrate(void *opaque)
if (vshCommandOptBool(cmd, "unsafe"))
flags |= VIR_MIGRATE_UNSAFE;
+ if (vshCommandOptBool(cmd, "compressed"))
+ flags |= VIR_MIGRATE_COMPRESSED;
+
if (vshCommandOptBool(cmd, "offline")) {
flags |= VIR_MIGRATE_OFFLINE;
}
diff --git a/tools/virsh.pod b/tools/virsh.pod
index 96666c4..e675850 100644
--- a/tools/virsh.pod
+++ b/tools/virsh.pod
@@ -1043,7 +1043,7 @@ stats.
=item B<migrate> [I<--live>] [I<--offline>] [I<--direct>]
[I<--p2p> [I<--tunnelled>]]
[I<--persistent>] [I<--undefinesource>] [I<--suspend>]
[I<--copy-storage-all>]
[I<--copy-storage-inc>] [I<--change-protection>] [I<--unsafe>]
[I<--verbose>]
-I<domain> I<desturi> [I<migrateuri>] [I<dname>]
+[I<--compressed>] I<domain> I<desturi> [I<migrateuri>]
[I<dname>]
[I<--timeout> B<seconds>] [I<--xml> B<file>]
Migrate domain to another host. Add I<--live> for live migration; <--p2p>
@@ -1064,7 +1064,9 @@ host. I<--change-protection> enforces that no incompatible
configuration
changes will be made to the domain while the migration is underway; this flag
is implicitly enabled when supported by the hypervisor, but can be explicitly
used to reject the migration if the hypervisor lacks change protection
-support. I<--verbose> displays the progress of migration.
+support. I<--verbose> displays the progress of migration. I<--compressed>
+activates compression of memory pages that have to be transferred repeatedly
+during live migration.
B<Note>: Individual hypervisors usually do not support all possible types of
migration. For example, QEMU does not support direct migration.
--
1.8.1.2