On Fri,  8 Dec 2017 20:32:49 +0000
"Dr. David Alan Gilbert (git)" <dgilb...@redhat.com> wrote:

> From: "Dr. David Alan Gilbert" <dgilb...@redhat.com>
> 
> Hi,
>   This is an experimental set that reworks the way the vhost
> code handles changes in physical address space layout that
> came from a discussion with Igor.
> 
> It's intention is to simplify a lot of the update code,
> and to make it easier for the postcopy+shared code to
> do the hugepage alignments that are needed.
> 
> Instead of updating and trying to merge sections of address
> space on each add/remove callback, we wait until the commit phase
> and go through and rebuild a list by walking the Flatview of
> memory and end up producing an ordered list.
> We compare the list to the old list to trigger updates.
> 
> This is pretty lightly tested (not least because I can't
> get vhost-user+hot-add memory to survive even upstream).
vhost kernel + hot-add should works (well that's at ales what I'm
usually testing).

vhost-user was lately failing 'make check' on me even without
memhotplug, so I've disabled it in my builds for now.



> v2
>   Incorporate changes and code from Igor, in particular the simpler
>   ring verification checks and thus the removal of the complex
>   comparison code.
> 
> Dave
> 
> 
> Dr. David Alan Gilbert (8):
>   memory: address_space_iterate
>   vhost: Move log_dirty check
>   vhost: Simplify ring verification checks
>   vhost: New memory update functions
>   vhost: update_mem_cb implementation
>   vhost: Compare and copy updated region data into device state
>   vhost: Remove old vhost_set_memory etc
>   vhost: Move mem_sections maintenance into commit/update routines
> 
>  hw/virtio/trace-events    |   7 +
>  hw/virtio/vhost.c         | 504 
> ++++++++++++++++------------------------------
>  include/exec/memory.h     |  23 +++
>  include/hw/virtio/vhost.h |   3 -
>  memory.c                  |  22 ++
>  5 files changed, 229 insertions(+), 330 deletions(-)
> 


Reply via email to