diff mbox series

[03/18] migration: RDMA is not compatible with anything else

Message ID 20230613145757.10131-4-quintela@redhat.com
State New
Headers show
Series Migration compression cleanup | expand

Commit Message

Juan Quintela June 13, 2023, 2:57 p.m. UTC
So give an error instead of just ignoring the other methods.

Signed-off-by: Juan Quintela <quintela@redhat.com>
---
 migration/migration.c | 12 ++++++++++++
 1 file changed, 12 insertions(+)

Comments

Lukas Straub June 22, 2023, 11:44 a.m. UTC | #1
On Tue, 13 Jun 2023 16:57:42 +0200
Juan Quintela <quintela@redhat.com> wrote:

> So give an error instead of just ignoring the other methods.
> 
> Signed-off-by: Juan Quintela <quintela@redhat.com>

Reviewed-by: Lukas Straub <lukasstraub2@web.de>

> ---
>  migration/migration.c | 12 ++++++++++++
>  1 file changed, 12 insertions(+)
> 
> diff --git a/migration/migration.c b/migration/migration.c
> index dc05c6f6ea..84551f040c 100644
> --- a/migration/migration.c
> +++ b/migration/migration.c
> @@ -436,6 +436,18 @@ static void qemu_start_incoming_migration(const char *uri, Error **errp)
>          socket_start_incoming_migration(p ? p : uri, errp);
>  #ifdef CONFIG_RDMA
>      } else if (strstart(uri, "rdma:", &p)) {
> +        if (migrate_compress()) {
> +            error_setg(errp, "RDMA and compression can't be used together");
> +            return;
> +        }
> +        if (migrate_xbzrle()) {
> +            error_setg(errp, "RDMA and XBZRLE can't be used together");
> +            return;
> +        }
> +        if (migrate_multifd()) {
> +            error_setg(errp, "RDMA and multifd can't be used together");
> +            return;
> +        }
>          rdma_start_incoming_migration(p, errp);
>  #endif
>      } else if (strstart(uri, "exec:", &p)) {
diff mbox series

Patch

diff --git a/migration/migration.c b/migration/migration.c
index dc05c6f6ea..84551f040c 100644
--- a/migration/migration.c
+++ b/migration/migration.c
@@ -436,6 +436,18 @@  static void qemu_start_incoming_migration(const char *uri, Error **errp)
         socket_start_incoming_migration(p ? p : uri, errp);
 #ifdef CONFIG_RDMA
     } else if (strstart(uri, "rdma:", &p)) {
+        if (migrate_compress()) {
+            error_setg(errp, "RDMA and compression can't be used together");
+            return;
+        }
+        if (migrate_xbzrle()) {
+            error_setg(errp, "RDMA and XBZRLE can't be used together");
+            return;
+        }
+        if (migrate_multifd()) {
+            error_setg(errp, "RDMA and multifd can't be used together");
+            return;
+        }
         rdma_start_incoming_migration(p, errp);
 #endif
     } else if (strstart(uri, "exec:", &p)) {