]> git.proxmox.com Git - mirror_qemu.git/commit - migration/rdma.c
migration: convert RDMA to use QIOChannel interface
authorDaniel P. Berrange <berrange@redhat.com>
Wed, 27 Apr 2016 10:05:07 +0000 (11:05 +0100)
committerAmit Shah <amit.shah@redhat.com>
Thu, 26 May 2016 06:01:50 +0000 (11:31 +0530)
commit6ddd2d76ca6f86f7a6c29291ec3bca32d15bab24
tree0960bfc8add783ee24c8cf8433663c41aa0b7a6e
parent527792fae60486c912146a14f601b830d160fe36
migration: convert RDMA to use QIOChannel interface

This converts the RDMA code to provide a subclass of QIOChannel
that uses RDMA for the data transport.

This implementation of RDMA does not correctly handle non-blocking
mode. Reads might block if there was not already some pending data
and writes will block until all data is sent. This flawed behaviour
was already present in the existing impl, so appears to not be a
critical problem at this time. It should be on the list of things
to fix in the future though.

The RDMA code would be much better off it it could be split up in
a generic RDMA layer, a QIOChannel impl based on RMDA, and then
the RMDA migration glue. This is left as a future exercise for
the brave.

Reviewed-by: Dr. David Alan Gilbert <dgilbert@redhat.com>
Signed-off-by: Daniel P. Berrange <berrange@redhat.com>
Message-Id: <1461751518-12128-18-git-send-email-berrange@redhat.com>
Signed-off-by: Amit Shah <amit.shah@redhat.com>
migration/rdma.c