qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Qemu-devel] [PATCH v2 0/9] vhost-user: add migration log support (for 2


From: Marc-André Lureau
Subject: [Qemu-devel] [PATCH v2 0/9] vhost-user: add migration log support (for 2.5)
Date: Tue, 28 Jul 2015 19:36:34 +0200

Hi,

The following series implement shareable log for vhost-user to support
memory tracking during live migration. On qemu-side, the solution is
fairly straightfoward since vhost already supports the dirty log, only
vhost-user couldn't access the log memory until then.

The series is based on top of "protocol feature negotiation" series
proposed earlier by Michael S. Tsirkin.

The last patch provides some documentation on what the backend is
supposed to do to handle logging properly. I tested this solution
against a modified "vapp": https://github.com/elmarco/vapp branch
"log"

Since RFC:
- moved memfd support in its own .c, include the linux asm/unistd.h
  headers for syscall nr. Unfortunately, linux/fcntl.h can't be
  included (type conflicts with glibc), furthermore, we may want to
  have code compiling on other platforms without having ifdef all
  over.

- fix keeping the LOG_BASE call before swapping the logs: I introduced
  an extra vararg to vhost_call to give optional extra details to the
  backend for that

- adjusted vhost-user migration doc about atomicity of changes

The development branch I used is:
https://github.com/elmarco/qemu branch "vhost-user"

More comments welcome!

Marc-André Lureau (9):
  configure: probe for memfd
  posix: add linux-only memfd fallback
  osdep: add memfd helpers
  vhost: alloc shareable log
  vhost: document log resizing
  vhost: use variable arguments for vhost_call()
  vhost-user: start and end the va_list
  vhost-user: send log shm fd along with log_base
  vhost-user: document migration log

 configure                         |  19 ++++++
 docs/specs/vhost-user.txt         |  42 +++++++++++++
 hw/virtio/vhost-backend.c         |   4 +-
 hw/virtio/vhost-user.c            |  52 +++++++++++-----
 hw/virtio/vhost.c                 |  45 +++++++++++---
 include/hw/virtio/vhost-backend.h |   6 +-
 include/hw/virtio/vhost.h         |   3 +-
 include/qemu/memfd.h              |  24 ++++++++
 util/Makefile.objs                |   2 +-
 util/memfd.c                      | 126 ++++++++++++++++++++++++++++++++++++++
 10 files changed, 292 insertions(+), 31 deletions(-)
 create mode 100644 include/qemu/memfd.h
 create mode 100644 util/memfd.c

-- 
2.4.3




reply via email to

[Prev in Thread] Current Thread [Next in Thread]