qemu-devel
[Top][All Lists]
Advanced

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

Re: [Qemu-devel] [PATCH v5 0/7] Rework vhost memory region updates


From: Igor Mammedov
Subject: Re: [Qemu-devel] [PATCH v5 0/7] Rework vhost memory region updates
Date: Wed, 27 Dec 2017 14:44:43 +0100

On Mon, 18 Dec 2017 20:13:33 +0000
"Dr. David Alan Gilbert (git)" <address@hidden> wrote:

> From: "Dr. David Alan Gilbert" <address@hidden>
> 
> Hi,
>   This patch set reworks the way the vhost code handles changes in
> physical address space layout that came from a discussion with Igor.
> 
> Its 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 inserting/removing each section during the add/del
> callbacks of the listener, we start afresh and build a list
> from the add and nop callbacks, then at the end compare the list
> we've built with the exisiting list.
> 
> v5
>   Solve the unref race found by Igor with a new 1st patch
>   Now we've got a temporary section list rework the rest of the set
>    around that.
> 
> Dr. David Alan Gilbert (7):
>   vhost: Build temporary section list and deref after commit
>   vhost: Move log_dirty check
>   vhost: Simplify ring verification checks
>   vhost: Merge sections added to temporary list
>   vhost: Regenerate region list from changed sections list
>   vhost: Clean out old vhost_set_memory and friends
>   vhost: Merge and delete unused callbacks
> 
>  hw/virtio/trace-events    |   6 +
>  hw/virtio/vhost.c         | 490 
> ++++++++++++++++------------------------------
>  include/hw/virtio/vhost.h |   5 +-
>  3 files changed, 174 insertions(+), 327 deletions(-)
Nice diffstat and more importantly it should be easier to reason about changes 
to memmap in future patches,
Thanks for making it easier to read/understand how memap updates work.

The series looks almost ready, I've Acked most of it modulo
    "vhost: Move log_dirty check"
      - I'm not convinced that doing it while old code still around is right 
thing to do as it might break bisectability,
        Maybe Michael may ack it if doesn't really affect old code,
        see discussion at '[PATCH v4 1/6] vhost: Move log_dirty check'

    "vhost: Regenerate region list from changed sections list"
      - suggested an additional cleanup

    "vhost: Clean out old vhost_set_memory and friends"
      - removes update to used_memslots without providing an alternative,
        it could lead to crashes when region count goes above backend's limit
        related thread "[PATCH v2 0/2] vhost: two fixes"

    the rest of comments are just minor issues



reply via email to

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