From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([208.118.235.92]:38553) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1TULP5-00027H-IS for qemu-devel@nongnu.org; Fri, 02 Nov 2012 13:51:36 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1TULP4-0005Sh-Av for qemu-devel@nongnu.org; Fri, 02 Nov 2012 13:51:35 -0400 Received: from mail-pa0-f45.google.com ([209.85.220.45]:52142) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1TULP4-0005Nu-4t for qemu-devel@nongnu.org; Fri, 02 Nov 2012 13:51:34 -0400 Received: by mail-pa0-f45.google.com with SMTP id fb10so2536065pad.4 for ; Fri, 02 Nov 2012 10:51:33 -0700 (PDT) Sender: Paolo Bonzini From: Paolo Bonzini Date: Fri, 2 Nov 2012 18:50:58 +0100 Message-Id: <1351878665-32413-6-git-send-email-pbonzini@redhat.com> In-Reply-To: <1351878665-32413-1-git-send-email-pbonzini@redhat.com> References: <1351878665-32413-1-git-send-email-pbonzini@redhat.com> Subject: [Qemu-devel] [PATCH 05/12] migration: clean up server sockets and handlers before invoking process_incoming_migration List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: qemu-devel@nongnu.org Cc: aliguori@us.ibm.com A first step towards making a common "suffix" for all migration protocols, and moving it to process_incoming_migration. Reviewed-by: Orit Wasserman Signed-off-by: Paolo Bonzini --- migration-exec.c | 2 +- migration-fd.c | 2 +- migration-tcp.c | 7 +++---- migration-unix.c | 7 +++---- 4 file modificati, 8 inserzioni(+), 10 rimozioni(-) diff --git a/migration-exec.c b/migration-exec.c index 452bf07..014c60f 100644 --- a/migration-exec.c +++ b/migration-exec.c @@ -87,8 +87,8 @@ static void exec_accept_incoming_migration(void *opaque) { QEMUFile *f = opaque; - process_incoming_migration(f); qemu_set_fd_handler2(qemu_get_fd(f), NULL, NULL, NULL, NULL); + process_incoming_migration(f); qemu_fclose(f); } diff --git a/migration-fd.c b/migration-fd.c index b47b222..a4cd83f 100644 --- a/migration-fd.c +++ b/migration-fd.c @@ -92,8 +92,8 @@ static void fd_accept_incoming_migration(void *opaque) { QEMUFile *f = opaque; - process_incoming_migration(f); qemu_set_fd_handler2(qemu_get_fd(f), NULL, NULL, NULL, NULL); + process_incoming_migration(f); qemu_fclose(f); } diff --git a/migration-tcp.c b/migration-tcp.c index 46f6ac5..96a832c 100644 --- a/migration-tcp.c +++ b/migration-tcp.c @@ -88,12 +88,14 @@ static void tcp_accept_incoming_migration(void *opaque) do { c = qemu_accept(s, (struct sockaddr *)&addr, &addrlen); } while (c == -1 && socket_error() == EINTR); + qemu_set_fd_handler2(s, NULL, NULL, NULL, NULL); + close(s); DPRINTF("accepted migration\n"); if (c == -1) { fprintf(stderr, "could not accept migration connection\n"); - goto out2; + goto out; } f = qemu_fopen_socket(c); @@ -106,9 +108,6 @@ static void tcp_accept_incoming_migration(void *opaque) qemu_fclose(f); out: close(c); -out2: - qemu_set_fd_handler2(s, NULL, NULL, NULL, NULL); - close(s); } void tcp_start_incoming_migration(const char *host_port, Error **errp) diff --git a/migration-unix.c b/migration-unix.c index ed3db3a..5dc49cd 100644 --- a/migration-unix.c +++ b/migration-unix.c @@ -88,12 +88,14 @@ static void unix_accept_incoming_migration(void *opaque) do { c = qemu_accept(s, (struct sockaddr *)&addr, &addrlen); } while (c == -1 && errno == EINTR); + qemu_set_fd_handler2(s, NULL, NULL, NULL, NULL); + close(s); DPRINTF("accepted migration\n"); if (c == -1) { fprintf(stderr, "could not accept migration connection\n"); - goto out2; + goto out; } f = qemu_fopen_socket(c); @@ -106,9 +108,6 @@ static void unix_accept_incoming_migration(void *opaque) qemu_fclose(f); out: close(c); -out2: - qemu_set_fd_handler2(s, NULL, NULL, NULL, NULL); - close(s); } void unix_start_incoming_migration(const char *path, Error **errp) -- 1.7.12.1