Introduce VIR_MIGRATE_COMPRESSED flag

This flag may be used with migration APIs to request compression of
migration data.
This commit is contained in:
Jiri Denemark 2013-01-10 13:39:34 +01:00
parent 7ea8c5d140
commit ecfff1dab3
3 changed files with 13 additions and 2 deletions

View File

@ -1187,6 +1187,7 @@ typedef enum {
* when supported */ * when supported */
VIR_MIGRATE_UNSAFE = (1 << 9), /* force migration even if it is considered unsafe */ VIR_MIGRATE_UNSAFE = (1 << 9), /* force migration even if it is considered unsafe */
VIR_MIGRATE_OFFLINE = (1 << 10), /* offline migrate */ VIR_MIGRATE_OFFLINE = (1 << 10), /* offline migrate */
VIR_MIGRATE_COMPRESSED = (1 << 11), /* compress data during migration */
} virDomainMigrateFlags; } virDomainMigrateFlags;
/* Domain migration. */ /* Domain migration. */

View File

@ -8340,6 +8340,11 @@ static const vshCmdOptDef opts_migrate[] = {
.flags = 0, .flags = 0,
.help = N_("display the progress of migration") .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", {.name = "domain",
.type = VSH_OT_DATA, .type = VSH_OT_DATA,
.flags = VSH_OFLAG_REQ, .flags = VSH_OFLAG_REQ,
@ -8430,6 +8435,9 @@ doMigrate(void *opaque)
if (vshCommandOptBool(cmd, "unsafe")) if (vshCommandOptBool(cmd, "unsafe"))
flags |= VIR_MIGRATE_UNSAFE; flags |= VIR_MIGRATE_UNSAFE;
if (vshCommandOptBool(cmd, "compressed"))
flags |= VIR_MIGRATE_COMPRESSED;
if (vshCommandOptBool(cmd, "offline")) { if (vshCommandOptBool(cmd, "offline")) {
flags |= VIR_MIGRATE_OFFLINE; flags |= VIR_MIGRATE_OFFLINE;
} }

View File

@ -1043,7 +1043,7 @@ stats.
=item B<migrate> [I<--live>] [I<--offline>] [I<--direct>] [I<--p2p> [I<--tunnelled>]] =item B<migrate> [I<--live>] [I<--offline>] [I<--direct>] [I<--p2p> [I<--tunnelled>]]
[I<--persistent>] [I<--undefinesource>] [I<--suspend>] [I<--copy-storage-all>] [I<--persistent>] [I<--undefinesource>] [I<--suspend>] [I<--copy-storage-all>]
[I<--copy-storage-inc>] [I<--change-protection>] [I<--unsafe>] [I<--verbose>] [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>] [I<--timeout> B<seconds>] [I<--xml> B<file>]
Migrate domain to another host. Add I<--live> for live migration; <--p2p> 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 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 is implicitly enabled when supported by the hypervisor, but can be explicitly
used to reject the migration if the hypervisor lacks change protection 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 B<Note>: Individual hypervisors usually do not support all possible types of
migration. For example, QEMU does not support direct migration. migration. For example, QEMU does not support direct migration.