[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH v4 25/32] migration: return incoming task tag for ex
From: |
Peter Xu |
Subject: |
[Qemu-devel] [PATCH v4 25/32] migration: return incoming task tag for exec |
Date: |
Wed, 8 Nov 2017 14:01:23 +0800 |
Return the async task tag for exec typed incoming migration in
exec_start_incoming_migration().
Reviewed-by: Dr. David Alan Gilbert <address@hidden>
Signed-off-by: Peter Xu <address@hidden>
---
migration/exec.c | 18 +++++++++++-------
migration/exec.h | 2 +-
2 files changed, 12 insertions(+), 8 deletions(-)
diff --git a/migration/exec.c b/migration/exec.c
index f3be1baf2e..a0796c2c70 100644
--- a/migration/exec.c
+++ b/migration/exec.c
@@ -52,7 +52,11 @@ static gboolean exec_accept_incoming_migration(QIOChannel
*ioc,
return G_SOURCE_REMOVE;
}
-void exec_start_incoming_migration(const char *command, Error **errp)
+/*
+ * Returns the tag ID of the watch that is attached to global main
+ * loop (>0), or zero if failure detected.
+ */
+guint exec_start_incoming_migration(const char *command, Error **errp)
{
QIOChannel *ioc;
const char *argv[] = { "/bin/sh", "-c", command, NULL };
@@ -62,13 +66,13 @@ void exec_start_incoming_migration(const char *command,
Error **errp)
O_RDWR,
errp));
if (!ioc) {
- return;
+ return 0;
}
qio_channel_set_name(ioc, "migration-exec-incoming");
- qio_channel_add_watch(ioc,
- G_IO_IN,
- exec_accept_incoming_migration,
- NULL,
- NULL);
+ return qio_channel_add_watch(ioc,
+ G_IO_IN,
+ exec_accept_incoming_migration,
+ NULL,
+ NULL);
}
diff --git a/migration/exec.h b/migration/exec.h
index b210ffde7a..0a7aadacd3 100644
--- a/migration/exec.h
+++ b/migration/exec.h
@@ -19,7 +19,7 @@
#ifndef QEMU_MIGRATION_EXEC_H
#define QEMU_MIGRATION_EXEC_H
-void exec_start_incoming_migration(const char *host_port, Error **errp);
+guint exec_start_incoming_migration(const char *host_port, Error **errp);
void exec_start_outgoing_migration(MigrationState *s, const char *host_port,
Error **errp);
--
2.13.6
- [Qemu-devel] [PATCH v4 21/32] migration: setup ramstate for resume, (continued)
- [Qemu-devel] [PATCH v4 21/32] migration: setup ramstate for resume, Peter Xu, 2017/11/08
- [Qemu-devel] [PATCH v4 23/32] migration: free SocketAddress where allocated, Peter Xu, 2017/11/08
- [Qemu-devel] [PATCH v4 22/32] migration: final handshake for the resume, Peter Xu, 2017/11/08
- [Qemu-devel] [PATCH v4 26/32] migration: return incoming task tag for fd, Peter Xu, 2017/11/08
- [Qemu-devel] [PATCH v4 27/32] migration: store listen task tag, Peter Xu, 2017/11/08
- [Qemu-devel] [PATCH v4 29/32] migration: init dst in migration_object_init too, Peter Xu, 2017/11/08
- [Qemu-devel] [PATCH v4 30/32] migration: delay the postcopy-active state switch, Peter Xu, 2017/11/08
- [Qemu-devel] [PATCH v4 32/32] migration, hmp: new command "migrate_pause", Peter Xu, 2017/11/08
- [Qemu-devel] [PATCH v4 31/32] migration, qmp: new command "migrate-pause", Peter Xu, 2017/11/08
- [Qemu-devel] [PATCH v4 24/32] migration: return incoming task tag for sockets, Peter Xu, 2017/11/08
- [Qemu-devel] [PATCH v4 25/32] migration: return incoming task tag for exec,
Peter Xu <=
- [Qemu-devel] [PATCH v4 14/32] migration: wakeup dst ram-load-thread for recover, Peter Xu, 2017/11/08
- [Qemu-devel] [PATCH v4 05/32] migration: implement "postcopy-pause" src logic, Peter Xu, 2017/11/08
- [Qemu-devel] [PATCH v4 07/32] migration: allow src return path to pause, Peter Xu, 2017/11/08
- [Qemu-devel] [PATCH v4 12/32] migration: rebuild channel on source, Peter Xu, 2017/11/08
- [Qemu-devel] [PATCH v4 13/32] migration: new state "postcopy-recover", Peter Xu, 2017/11/08
- [Qemu-devel] [PATCH v4 16/32] migration: new message MIG_RP_MSG_RECV_BITMAP, Peter Xu, 2017/11/08
- [Qemu-devel] [PATCH v4 28/32] migration: allow migrate_incoming for paused VM, Peter Xu, 2017/11/08