2019-01-29 13:07:08 +00:00
|
|
|
From 93cfdba0a95999ba3d44afe5c15cc3810446f11b Mon Sep 17 00:00:00 2001
|
2019-01-28 14:41:10 +00:00
|
|
|
From: "Dr. David Alan Gilbert" <dgilbert@redhat.com>
|
|
|
|
Date: Thu, 24 Jan 2019 16:41:10 +0000
|
2019-01-29 13:07:08 +00:00
|
|
|
Subject: [PATCH 1/3] migration/rdma: unregister fd handler
|
2019-01-28 14:41:10 +00:00
|
|
|
MIME-Version: 1.0
|
|
|
|
Content-Type: text/plain; charset=UTF-8
|
|
|
|
Content-Transfer-Encoding: 8bit
|
|
|
|
|
|
|
|
RH-Author: Dr. David Alan Gilbert <dgilbert@redhat.com>
|
|
|
|
Message-id: <20190124164110.18787-2-dgilbert@redhat.com>
|
|
|
|
Patchwork-id: 84110
|
|
|
|
O-Subject: [RHEL-8.0 qemu-kvm PATCH 1/1] migration/rdma: unregister fd handler
|
|
|
|
Bugzilla: 1666601
|
|
|
|
RH-Acked-by: Peter Xu <peterx@redhat.com>
|
|
|
|
RH-Acked-by: Pankaj Gupta <pagupta@redhat.com>
|
|
|
|
RH-Acked-by: Philippe Mathieu-Daudé <philmd@redhat.com>
|
|
|
|
|
|
|
|
From: "Dr. David Alan Gilbert" <dgilbert@redhat.com>
|
|
|
|
|
|
|
|
Unregister the fd handler before we destroy the channel,
|
|
|
|
otherwise we've got a race where we might land in the
|
|
|
|
fd handler just as we're closing the device.
|
|
|
|
|
|
|
|
(The race is quite data dependent, you just have to have
|
|
|
|
the right set of devices for it to trigger).
|
|
|
|
|
|
|
|
Corresponds to RH bz: https://bugzilla.redhat.com/show_bug.cgi?id=1666601
|
|
|
|
|
|
|
|
Signed-off-by: Dr. David Alan Gilbert <dgilbert@redhat.com>
|
|
|
|
Message-Id: <20190122173111.29821-1-dgilbert@redhat.com>
|
|
|
|
Reviewed-by: Peter Xu <peterx@redhat.com>
|
|
|
|
Signed-off-by: Dr. David Alan Gilbert <dgilbert@redhat.com>
|
|
|
|
(cherry picked from commit fbbaacab2758cb3f32a07524710533b1d6422be4)
|
|
|
|
Signed-off-by: Danilo C. L. de Paula <ddepaula@redhat.com>
|
|
|
|
---
|
|
|
|
migration/rdma.c | 1 +
|
|
|
|
1 file changed, 1 insertion(+)
|
|
|
|
|
|
|
|
diff --git a/migration/rdma.c b/migration/rdma.c
|
|
|
|
index 9b2e7e1..54a3c11 100644
|
|
|
|
--- a/migration/rdma.c
|
|
|
|
+++ b/migration/rdma.c
|
|
|
|
@@ -2321,6 +2321,7 @@ static void qemu_rdma_cleanup(RDMAContext *rdma)
|
|
|
|
rdma->connected = false;
|
|
|
|
}
|
|
|
|
|
|
|
|
+ qemu_set_fd_handler(rdma->channel->fd, NULL, NULL, NULL);
|
|
|
|
g_free(rdma->dest_blocks);
|
|
|
|
rdma->dest_blocks = NULL;
|
|
|
|
|
|
|
|
--
|
|
|
|
1.8.3.1
|
|
|
|
|