From: "Marc-André Lureau" <marcandre.lureau@redhat.com>
To: qemu-devel@nongnu.org
Cc: haifeng.lin@huawei.com, mst@redhat.com, thibaut.collet@6wind.com,
jasowang@redhat.com, pbonzini@redhat.com,
"Marc-André Lureau" <marcandre.lureau@redhat.com>
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 [thread overview]
Message-ID: <1438105003-29501-1-git-send-email-marcandre.lureau@redhat.com> (raw)
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
next reply other threads:[~2015-07-28 17:36 UTC|newest]
Thread overview: 18+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-07-28 17:36 Marc-André Lureau [this message]
2015-07-28 17:36 ` [Qemu-devel] [PATCH v2 1/9] configure: probe for memfd Marc-André Lureau
2015-07-28 17:36 ` [Qemu-devel] [PATCH v2 2/9] posix: add linux-only memfd fallback Marc-André Lureau
2015-08-03 11:31 ` Marc-André Lureau
2015-07-28 17:36 ` [Qemu-devel] [PATCH v2 3/9] osdep: add memfd helpers Marc-André Lureau
2015-08-03 11:32 ` Marc-André Lureau
2015-07-28 17:36 ` [Qemu-devel] [PATCH v2 4/9] vhost: alloc shareable log Marc-André Lureau
2015-07-29 16:53 ` Dr. David Alan Gilbert
2015-07-29 17:04 ` Marc-André Lureau
2015-07-29 17:08 ` Dr. David Alan Gilbert
2015-07-29 17:22 ` Michael S. Tsirkin
2015-07-28 17:36 ` [Qemu-devel] [PATCH v2 5/9] vhost: document log resizing Marc-André Lureau
2015-07-28 17:36 ` [Qemu-devel] [PATCH v2 6/9] vhost: use variable arguments for vhost_call() Marc-André Lureau
2015-08-01 2:47 ` l
2015-08-03 11:03 ` Marc-André Lureau
2015-07-28 17:36 ` [Qemu-devel] [PATCH v2 7/9] vhost-user: start and end the va_list Marc-André Lureau
2015-07-28 17:36 ` [Qemu-devel] [PATCH v2 8/9] vhost-user: send log shm fd along with log_base Marc-André Lureau
2015-07-28 17:36 ` [Qemu-devel] [PATCH v2 9/9] vhost-user: document migration log Marc-André Lureau
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1438105003-29501-1-git-send-email-marcandre.lureau@redhat.com \
--to=marcandre.lureau@redhat.com \
--cc=haifeng.lin@huawei.com \
--cc=jasowang@redhat.com \
--cc=mst@redhat.com \
--cc=pbonzini@redhat.com \
--cc=qemu-devel@nongnu.org \
--cc=thibaut.collet@6wind.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).