From: "Michael S. Tsirkin" <mst@redhat.com>
To: marcandre.lureau@redhat.com
Cc: haifeng.lin@huawei.com, thibaut.collet@6wind.com,
jasowang@redhat.com, qemu-devel@nongnu.org, pbonzini@redhat.com
Subject: Re: [Qemu-devel] [PATCH v7 00/24] vhost-user: add migration support
Date: Thu, 8 Oct 2015 23:52:22 +0300 [thread overview]
Message-ID: <20151008235057-mutt-send-email-mst@redhat.com> (raw)
In-Reply-To: <1443720248-15482-1-git-send-email-marcandre.lureau@redhat.com>
On Thu, Oct 01, 2015 at 07:23:44PM +0200, marcandre.lureau@redhat.com wrote:
> From: Marc-André Lureau <marcandre.lureau@redhat.com>
>
> 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 includes "vhost user: Add live migration" patches from
> Thibaut Collet.
OK, it was a quiet week otherwise, so I decided to pick
this patchset up and fix up the trivial issues myself.
I probably won't be able to do this in the future though.
> v6->v7:
> - add migration blocker if memfd failed
> - add doc about the qemu_memfd_alloc() helper
> - (rebase on top of Michael pci branch)
>
> v5->v6:
> - rebased
> - fix protocol feature mask update
> - add a patch from Thibault Collet using enum for features, and
> compute mask
> - add unistd.h linux headers to help building memfd if missing on
> build host. Hopefully will be useful for other syscalls some day
> - reorder/merge patches to share-allocate the log only if needed
> - split the memfd helper to allow to drop the fallback code
> - allow to call qemu_memfd_free() even if alloc failed
> - add some missing spaces
>
> v4->v5:
> - rebase on top of last Michael S. Tsirkin PULL request
> - block live migration if !PROTOCOL_F_LOG_SHMFD
> - wait for a reply after SET_LOG_BASE
> - split vhost_set_log_base from the rest of vhost_call refactoring
> - use a seperate global vhost_log_shm
>
> v3->v4:
> - add the proto negotiation & the migration series
> - replace the varargs vhost_call() approach for callbacks
> - only share-allocate when the backend needs it
>
> v2->v3:
> - changed some patch summary
> - added migration tests
> - added a patch to replace error message with a trace
>
> The development branch I used is:
> https://github.com/elmarco/qemu branch "vhost-user"
>
> Marc-André Lureau (21):
> configure: probe for memfd
> linux-headers: add unistd.h
> util: add linux-only memfd fallback
> util: add memfd helpers
> util: add fallback for qemu_memfd_alloc()
> vhost: document log resizing
> vhost: add vhost_set_log_base op
> vhost-user: add vhost_user_requires_shm_log()
> vhost: alloc shareable log
> vhost-user: send log shm fd along with log_base
> vhost-user: add a migration blocker
> vhost: use a function for each call
> vhost-user: document migration log
> net: add trace_vhost_user_event
> vhost: add migration block if memfd failed
> vhost-user-test: move wait_for_fds() out
> vhost-user-test: remove useless static check
> vhost-user-test: wrap server in TestServer struct
> vhost-user-test: learn to tweak various qemu arguments
> vhost-user-test: add live-migration test
> vhost-user-test: check ownership during migration
>
> Thibaut Collet (3):
> vhost user: add support of live migration
> vhost user: add rarp sending after live migration for legacy guest
> vhost-user: use an enum helper for features mask
>
> configure | 19 +
> docs/specs/vhost-user.txt | 63 ++-
> hw/net/vhost_net.c | 35 +-
> hw/scsi/vhost-scsi.c | 7 +-
> hw/virtio/vhost-backend.c | 121 +++-
> hw/virtio/vhost-user.c | 572 ++++++++++++-------
> hw/virtio/vhost.c | 121 ++--
> include/hw/virtio/vhost-backend.h | 77 ++-
> include/hw/virtio/vhost.h | 15 +-
> include/net/vhost_net.h | 1 +
> include/qemu/memfd.h | 26 +
> linux-headers/asm-arm/unistd.h | 448 +++++++++++++++
> linux-headers/asm-arm64/kvm.h | 37 +-
> linux-headers/asm-arm64/unistd.h | 16 +
> linux-headers/asm-mips/unistd.h | 1063 ++++++++++++++++++++++++++++++++++++
> linux-headers/asm-powerpc/unistd.h | 392 +++++++++++++
> linux-headers/asm-s390/unistd.h | 404 ++++++++++++++
> linux-headers/asm-x86/unistd.h | 15 +
> linux-headers/asm-x86/unistd_32.h | 377 +++++++++++++
> linux-headers/asm-x86/unistd_64.h | 330 +++++++++++
> linux-headers/asm-x86/unistd_x32.h | 319 +++++++++++
> net/vhost-user.c | 34 +-
> scripts/update-linux-headers.sh | 7 +-
> tests/vhost-user-test.c | 372 +++++++++++--
> trace-events | 3 +
> util/Makefile.objs | 9 +-
> util/memfd.c | 165 ++++++
> 27 files changed, 4713 insertions(+), 335 deletions(-)
> create mode 100644 include/qemu/memfd.h
> create mode 100644 linux-headers/asm-arm/unistd.h
> create mode 100644 linux-headers/asm-arm64/unistd.h
> create mode 100644 linux-headers/asm-mips/unistd.h
> create mode 100644 linux-headers/asm-powerpc/unistd.h
> create mode 100644 linux-headers/asm-s390/unistd.h
> create mode 100644 linux-headers/asm-x86/unistd.h
> create mode 100644 linux-headers/asm-x86/unistd_32.h
> create mode 100644 linux-headers/asm-x86/unistd_64.h
> create mode 100644 linux-headers/asm-x86/unistd_x32.h
> create mode 100644 util/memfd.c
>
> --
> 2.4.3
prev parent reply other threads:[~2015-10-08 20:52 UTC|newest]
Thread overview: 41+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-10-01 17:23 [Qemu-devel] [PATCH v7 00/24] vhost-user: add migration support marcandre.lureau
2015-10-01 17:23 ` [Qemu-devel] [PATCH v7 01/24] configure: probe for memfd marcandre.lureau
2015-10-01 17:23 ` [Qemu-devel] [PATCH v7 02/24] linux-headers: add unistd.h marcandre.lureau
2015-10-01 17:23 ` [Qemu-devel] [PATCH v7 03/24] util: add linux-only memfd fallback marcandre.lureau
2015-10-02 13:39 ` Michael S. Tsirkin
2015-10-02 13:56 ` Marc-André Lureau
2015-10-02 14:01 ` Michael S. Tsirkin
2015-10-02 15:57 ` Paolo Bonzini
2015-10-02 18:26 ` Marc-André Lureau
2015-10-02 18:35 ` Paolo Bonzini
2015-10-04 8:42 ` Michael S. Tsirkin
2015-10-01 17:23 ` [Qemu-devel] [PATCH v7 04/24] util: add memfd helpers marcandre.lureau
2015-10-01 17:23 ` [Qemu-devel] [PATCH v7 05/24] util: add fallback for qemu_memfd_alloc() marcandre.lureau
2015-10-01 17:23 ` [Qemu-devel] [PATCH v7 06/24] vhost: document log resizing marcandre.lureau
2015-10-01 17:23 ` [Qemu-devel] [PATCH v7 07/24] vhost: add vhost_set_log_base op marcandre.lureau
2015-10-01 17:23 ` [Qemu-devel] [PATCH v7 08/24] vhost-user: add vhost_user_requires_shm_log() marcandre.lureau
2015-10-01 17:23 ` [Qemu-devel] [PATCH v7 09/24] vhost: alloc shareable log marcandre.lureau
2015-10-01 17:23 ` [Qemu-devel] [PATCH v7 10/24] vhost-user: send log shm fd along with log_base marcandre.lureau
2015-10-01 17:23 ` [Qemu-devel] [PATCH v7 11/24] vhost-user: add a migration blocker marcandre.lureau
2015-10-01 17:23 ` [Qemu-devel] [PATCH v7 12/24] vhost: use a function for each call marcandre.lureau
2015-10-07 15:45 ` Thibaut Collet
2015-10-07 15:58 ` Marc-André Lureau
2015-10-07 16:04 ` Thibaut Collet
2015-10-07 16:08 ` Marc-André Lureau
2015-10-01 17:23 ` [Qemu-devel] [PATCH v7 13/24] vhost-user: document migration log marcandre.lureau
2015-10-01 17:23 ` [Qemu-devel] [PATCH v7 14/24] net: add trace_vhost_user_event marcandre.lureau
2015-10-01 17:23 ` [Qemu-devel] [PATCH v7 15/24] vhost user: add support of live migration marcandre.lureau
2015-10-01 17:24 ` [Qemu-devel] [PATCH v7 16/24] vhost user: add rarp sending after live migration for legacy guest marcandre.lureau
2015-10-02 13:37 ` Michael S. Tsirkin
2015-10-02 13:55 ` Marc-André Lureau
2015-10-02 14:02 ` Michael S. Tsirkin
2015-10-02 14:38 ` Thibaut Collet
2015-10-01 17:24 ` [Qemu-devel] [PATCH v7 17/24] vhost-user: use an enum helper for features mask marcandre.lureau
2015-10-01 17:24 ` [Qemu-devel] [PATCH v7 18/24] vhost: add migration block if memfd failed marcandre.lureau
2015-10-01 17:24 ` [Qemu-devel] [PATCH v7 19/24] vhost-user-test: move wait_for_fds() out marcandre.lureau
2015-10-01 17:24 ` [Qemu-devel] [PATCH v7 20/24] vhost-user-test: remove useless static check marcandre.lureau
2015-10-01 17:24 ` [Qemu-devel] [PATCH v7 21/24] vhost-user-test: wrap server in TestServer struct marcandre.lureau
2015-10-01 17:24 ` [Qemu-devel] [PATCH v7 22/24] vhost-user-test: learn to tweak various qemu arguments marcandre.lureau
2015-10-01 17:24 ` [Qemu-devel] [PATCH v7 23/24] vhost-user-test: add live-migration test marcandre.lureau
2015-10-01 17:24 ` [Qemu-devel] [PATCH v7 24/24] vhost-user-test: check ownership during migration marcandre.lureau
2015-10-08 20:52 ` Michael S. Tsirkin [this message]
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=20151008235057-mutt-send-email-mst@redhat.com \
--to=mst@redhat.com \
--cc=haifeng.lin@huawei.com \
--cc=jasowang@redhat.com \
--cc=marcandre.lureau@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).