diff options
| author | Het Gala <het.gala@nutanix.com> | 2023-10-23 15:20:45 -0300 |
|---|---|---|
| committer | Juan Quintela <quintela@redhat.com> | 2023-11-02 11:35:03 +0100 |
| commit | 3fa9642ff7d51f7fc3ba68e6ccd13a939d5bd609 (patch) | |
| tree | 52c3e930671e0e681ffe600a11f30251c10cc5cb /migration/migration.c | |
| parent | 34dfc5e4077039e93667b5a72a2fbbe2f1b96e4b (diff) | |
| download | focaccia-qemu-3fa9642ff7d51f7fc3ba68e6ccd13a939d5bd609.tar.gz focaccia-qemu-3fa9642ff7d51f7fc3ba68e6ccd13a939d5bd609.zip | |
migration: convert rdma backend to accept MigrateAddress
RDMA based transport backend for 'migrate'/'migrate-incoming' QAPIs accept new wire protocol of MigrateAddress struct. It is achived by parsing 'uri' string and storing migration parameters required for RDMA connection into well defined InetSocketAddress struct. Suggested-by: Aravind Retnakaran <aravind.retnakaran@nutanix.com> Signed-off-by: Het Gala <het.gala@nutanix.com> Reviewed-by: Daniel P. Berrangé <berrange@redhat.com> Signed-off-by: Fabiano Rosas <farosas@suse.de> Reviewed-by: Juan Quintela <quintela@redhat.com> Signed-off-by: Juan Quintela <quintela@redhat.com> Message-ID: <20231023182053.8711-7-farosas@suse.de>
Diffstat (limited to 'migration/migration.c')
| -rw-r--r-- | migration/migration.c | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/migration/migration.c b/migration/migration.c index 846877135a..8c26672630 100644 --- a/migration/migration.c +++ b/migration/migration.c @@ -534,7 +534,7 @@ static void qemu_start_incoming_migration(const char *uri, Error **errp) fd_start_incoming_migration(saddr->u.fd.str, errp); } #ifdef CONFIG_RDMA - } else if (strstart(uri, "rdma:", &p)) { + } else if (channel->transport == MIGRATION_ADDRESS_TYPE_RDMA) { if (migrate_compress()) { error_setg(errp, "RDMA and compression can't be used together"); return; @@ -547,7 +547,7 @@ static void qemu_start_incoming_migration(const char *uri, Error **errp) error_setg(errp, "RDMA and multifd can't be used together"); return; } - rdma_start_incoming_migration(p, errp); + rdma_start_incoming_migration(&channel->u.rdma, errp); #endif } else if (strstart(uri, "exec:", &p)) { exec_start_incoming_migration(p, errp); @@ -1935,8 +1935,8 @@ void qmp_migrate(const char *uri, bool has_blk, bool blk, fd_start_outgoing_migration(s, saddr->u.fd.str, &local_err); } #ifdef CONFIG_RDMA - } else if (strstart(uri, "rdma:", &p)) { - rdma_start_outgoing_migration(s, p, &local_err); + } else if (channel->transport == MIGRATION_ADDRESS_TYPE_RDMA) { + rdma_start_outgoing_migration(s, &channel->u.rdma, &local_err); #endif } else if (strstart(uri, "exec:", &p)) { exec_start_outgoing_migration(s, p, &local_err); |