migration: introduce postcopy-blocktime capability
Right now it could be used on destination side to enable vCPU blocktime calculation for postcopy live migration. vCPU blocktime - it's time since vCPU thread was put into interruptible sleep, till memory page was copied and thread awake. Reviewed-by: Dr. David Alan Gilbert <dgilbert@redhat.com> Signed-off-by: Alexey Perevalov <a.perevalov@samsung.com> Reviewed-by: Juan Quintela <quintela@redhat.com> Signed-off-by: Juan Quintela <quintela@redhat.com>
This commit is contained in:
parent
029ff892e1
commit
31bf06a9d6
@ -1499,6 +1499,15 @@ bool migrate_zero_blocks(void)
|
|||||||
return s->enabled_capabilities[MIGRATION_CAPABILITY_ZERO_BLOCKS];
|
return s->enabled_capabilities[MIGRATION_CAPABILITY_ZERO_BLOCKS];
|
||||||
}
|
}
|
||||||
|
|
||||||
|
bool migrate_postcopy_blocktime(void)
|
||||||
|
{
|
||||||
|
MigrationState *s;
|
||||||
|
|
||||||
|
s = migrate_get_current();
|
||||||
|
|
||||||
|
return s->enabled_capabilities[MIGRATION_CAPABILITY_POSTCOPY_BLOCKTIME];
|
||||||
|
}
|
||||||
|
|
||||||
bool migrate_use_compression(void)
|
bool migrate_use_compression(void)
|
||||||
{
|
{
|
||||||
MigrationState *s;
|
MigrationState *s;
|
||||||
|
@ -201,6 +201,7 @@ int migrate_compress_level(void);
|
|||||||
int migrate_compress_threads(void);
|
int migrate_compress_threads(void);
|
||||||
int migrate_decompress_threads(void);
|
int migrate_decompress_threads(void);
|
||||||
bool migrate_use_events(void);
|
bool migrate_use_events(void);
|
||||||
|
bool migrate_postcopy_blocktime(void);
|
||||||
|
|
||||||
/* Sending on the return path - generic and then for each message type */
|
/* Sending on the return path - generic and then for each message type */
|
||||||
void migrate_send_rp_shut(MigrationIncomingState *mis,
|
void migrate_send_rp_shut(MigrationIncomingState *mis,
|
||||||
|
@ -352,12 +352,16 @@
|
|||||||
#
|
#
|
||||||
# @x-multifd: Use more than one fd for migration (since 2.11)
|
# @x-multifd: Use more than one fd for migration (since 2.11)
|
||||||
#
|
#
|
||||||
|
# @postcopy-blocktime: Calculate downtime for postcopy live migration
|
||||||
|
# (since 2.12)
|
||||||
|
#
|
||||||
# Since: 1.2
|
# Since: 1.2
|
||||||
##
|
##
|
||||||
{ 'enum': 'MigrationCapability',
|
{ 'enum': 'MigrationCapability',
|
||||||
'data': ['xbzrle', 'rdma-pin-all', 'auto-converge', 'zero-blocks',
|
'data': ['xbzrle', 'rdma-pin-all', 'auto-converge', 'zero-blocks',
|
||||||
'compress', 'events', 'postcopy-ram', 'x-colo', 'release-ram',
|
'compress', 'events', 'postcopy-ram', 'x-colo', 'release-ram',
|
||||||
'block', 'return-path', 'pause-before-switchover', 'x-multifd' ] }
|
'block', 'return-path', 'pause-before-switchover', 'x-multifd',
|
||||||
|
'postcopy-blocktime' ] }
|
||||||
|
|
||||||
##
|
##
|
||||||
# @MigrationCapabilityStatus:
|
# @MigrationCapabilityStatus:
|
||||||
|
Loading…
Reference in New Issue
Block a user