Libvirt supports FD-based live migrations in the form of tunnelled migrations. However, this isn't as performant as of now, since it involves extra copies.
This patchset proposes adding support for externally provided file descriptors for live migration. By allowing the client to supply the migration FD directly, the extra copy can be avoided, improving overall migration performance. The intent is to gather early feedback on the approach and its feasibility. Comments, concerns, and suggestions are very welcome :) regards, Tejus Tejus GK (4): qemu: fd: introduce qemuFDTuple for FD storage lib: introduce virDomainFDStore API qemu: support incoming "fd" uri qemu: add support for fd based live migrations include/libvirt/libvirt-domain.h | 9 +++ src/driver-hypervisor.h | 7 ++ src/libvirt-domain.c | 62 +++++++++++++++ src/libvirt_public.syms | 5 ++ src/qemu/qemu_conf.h | 4 + src/qemu/qemu_driver.c | 41 ++++++++++ src/qemu/qemu_fd.c | 23 ++++++ src/qemu/qemu_fd.h | 14 ++++ src/qemu/qemu_migration.c | 117 +++++++++++++++++++++++++++- src/remote/remote_daemon_dispatch.c | 36 +++++++++ src/remote/remote_driver.c | 22 ++++++ src/remote/remote_protocol.x | 12 ++- 12 files changed, 348 insertions(+), 4 deletions(-) -- 2.43.7
