[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH v10 7/7] multifd: Implement zero copy write in multifd migrat
From: |
Leonardo Bras Soares Passos |
Subject: |
Re: [PATCH v10 7/7] multifd: Implement zero copy write in multifd migration (multifd-zero-copy) |
Date: |
Wed, 27 Apr 2022 08:31:26 -0300 |
On Wed, Apr 27, 2022 at 5:46 AM Daniel P. Berrangé <berrange@redhat.com> wrote:
>
> On Tue, Apr 26, 2022 at 08:06:56PM -0300, Leonardo Bras wrote:
> > Implement zero copy send on nocomp_send_write(), by making use of QIOChannel
> > writev + flags & flush interface.
> >
> > Change multifd_send_sync_main() so flush_zero_copy() can be called
> > after each iteration in order to make sure all dirty pages are sent before
> > a new iteration is started. It will also flush at the beginning and at the
> > end of migration.
> >
> > Also make it return -1 if flush_zero_copy() fails, in order to cancel
> > the migration process, and avoid resuming the guest in the target host
> > without receiving all current RAM.
> >
> > This will work fine on RAM migration because the RAM pages are not usually
> > freed,
> > and there is no problem on changing the pages content between
> > writev_zero_copy() and
> > the actual sending of the buffer, because this change will dirty the page
> > and
> > cause it to be re-sent on a next iteration anyway.
> >
> > A lot of locked memory may be needed in order to use multifd migration
> > with zero-copy enabled, so disabling the feature should be necessary for
> > low-privileged users trying to perform multifd migrations.
> >
> > Signed-off-by: Leonardo Bras <leobras@redhat.com>
> > ---
> > migration/multifd.h | 2 ++
> > migration/migration.c | 11 ++++++++++-
> > migration/multifd.c | 37 +++++++++++++++++++++++++++++++++++--
> > migration/socket.c | 5 +++--
> > 4 files changed, 50 insertions(+), 5 deletions(-)
>
> Reviewed-by: Daniel P. Berrangé <berrange@redhat.com>
>
>
> With regards,
> Daniel
Thanks for reviewing, Daniel!
Best regards,
Leo
> --
> |: https://berrange.com -o- https://www.flickr.com/photos/dberrange :|
> |: https://libvirt.org -o- https://fstop138.berrange.com :|
> |: https://entangle-photo.org -o- https://www.instagram.com/dberrange :|
>
- [PATCH v10 6/7] multifd: Send header packet without flags if zero-copy-send is enabled, (continued)