Commit fbbaacab authored by Dr. David Alan Gilbert's avatar Dr. David Alan Gilbert
Browse files

migration/rdma: unregister fd handler

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: default avatarDr. David Alan Gilbert <dgilbert@redhat.com>
Message-Id: <20190122173111.29821-1-dgilbert@redhat.com>
Reviewed-by: default avatarPeter Xu <peterx@redhat.com>
Signed-off-by: default avatarDr. David Alan Gilbert <dgilbert@redhat.com>
parent 6d99c2d4
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -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;