diff options
author | Juan Quintela <quintela@redhat.com> | 2023-03-01 23:15:59 +0100 |
---|---|---|
committer | Juan Quintela <quintela@redhat.com> | 2023-04-24 15:01:46 +0200 |
commit | 4d0c6b695bf5252402ebf967f83baebfd2f4b91e (patch) | |
tree | 2fdbb812e32809576d64cd42b5a05a5952fa4607 /migration/options.c | |
parent | 77608706459bd197e25ac1ef54591b9f8a0b46f8 (diff) |
migration: Move qmp_query_migrate_capabilities() to options.c
Signed-off-by: Juan Quintela <quintela@redhat.com>
Reviewed-by: Vladimir Sementsov-Ogievskiy <vsementsov@yandex-team.ru>
Diffstat (limited to 'migration/options.c')
-rw-r--r-- | migration/options.c | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/migration/options.c b/migration/options.c index 367c930f46..ff621bdeb3 100644 --- a/migration/options.c +++ b/migration/options.c @@ -13,6 +13,7 @@ #include "qemu/osdep.h" #include "qapi/error.h" +#include "qapi/qapi-commands-migration.h" #include "sysemu/runstate.h" #include "migration.h" #include "ram.h" @@ -390,3 +391,25 @@ bool migrate_caps_check(bool *old_caps, bool *new_caps, Error **errp) return true; } + +MigrationCapabilityStatusList *qmp_query_migrate_capabilities(Error **errp) +{ + MigrationCapabilityStatusList *head = NULL, **tail = &head; + MigrationCapabilityStatus *caps; + MigrationState *s = migrate_get_current(); + int i; + + for (i = 0; i < MIGRATION_CAPABILITY__MAX; i++) { +#ifndef CONFIG_LIVE_BLOCK_MIGRATION + if (i == MIGRATION_CAPABILITY_BLOCK) { + continue; + } +#endif + caps = g_malloc0(sizeof(*caps)); + caps->capability = i; + caps->state = s->capabilities[i]; + QAPI_LIST_APPEND(tail, caps); + } + + return head; +} |