migration: hmp: dump globals

Now we have some globals that can be configured for migration. Dump them
in HMP info migration for better debugging.

(we can also use this to monitor whether COMPAT fields are applied
correctly on compatible machines)

Reviewed-by: Juan Quintela <quintela@redhat.com>
Signed-off-by: Peter Xu <peterx@redhat.com>
Message-Id: <1498536619-14548-11-git-send-email-peterx@redhat.com>
Signed-off-by: Juan Quintela <quintela@redhat.com>
This commit is contained in:
Peter Xu 2017-06-27 12:10:19 +08:00 committed by Juan Quintela
parent 4ffdb337e7
commit 9d18af93b3
3 changed files with 15 additions and 0 deletions

3
hmp.c
View File

@ -43,6 +43,7 @@
#include "exec/ramlist.h"
#include "hw/intc/intc.h"
#include "migration/snapshot.h"
#include "migration/misc.h"
#ifdef CONFIG_SPICE
#include <spice/enums.h>
@ -164,6 +165,8 @@ void hmp_info_migrate(Monitor *mon, const QDict *qdict)
info = qmp_query_migrate(NULL);
caps = qmp_query_migrate_capabilities(NULL);
migration_global_dump(mon);
/* do not display parameters during setup */
if (info->has_status && caps) {
monitor_printf(mon, "capabilities: ");

View File

@ -54,5 +54,6 @@ bool migration_has_failed(MigrationState *);
/* ...and after the device transmission */
bool migration_in_postcopy_after_devices(MigrationState *);
void migration_only_migratable_set(void);
void migration_global_dump(Monitor *mon);
#endif

View File

@ -43,6 +43,7 @@
#include "io/channel-buffer.h"
#include "migration/colo.h"
#include "hw/boards.h"
#include "monitor/monitor.h"
#define MAX_THROTTLE (32 << 20) /* Migration transfer speed throttling */
@ -1993,6 +1994,16 @@ void migrate_fd_connect(MigrationState *s)
s->migration_thread_running = true;
}
void migration_global_dump(Monitor *mon)
{
MigrationState *ms = migrate_get_current();
monitor_printf(mon, "globals: store-global-state=%d, only_migratable=%d, "
"send-configuration=%d, send-section-footer=%d\n",
ms->store_global_state, ms->only_migratable,
ms->send_configuration, ms->send_section_footer);
}
static Property migration_properties[] = {
DEFINE_PROP_BOOL("store-global-state", MigrationState,
store_global_state, true),