From: "Dr. David Alan Gilbert" <dgilbert@redhat.com>
To: Stefan Hajnoczi <stefanha@gmail.com>
Cc: qemu-devel@nongnu.org, imammedo@redhat.com,
maxime.coquelin@redhat.com, mst@redhat.com
Subject: Re: [Qemu-devel] [RFC 0/7] Rework vhost memory region updates
Date: Fri, 1 Dec 2017 10:19:09 +0000 [thread overview]
Message-ID: <20171201101908.GA2318@work-vm> (raw)
In-Reply-To: <20171201100220.GE23501@stefanha-x1.localdomain>
* Stefan Hajnoczi (stefanha@gmail.com) wrote:
> On Wed, Nov 29, 2017 at 06:50:19PM +0000, Dr. David Alan Gilbert (git) wrote:
> > From: "Dr. David Alan Gilbert" <dgilbert@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.
> >
> > 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.
> >
> > Note, only very lightly tested so far, I'm just trying to see if it's
> > the right shape.
>
> The cover letter doesn't mention why this change is necessary. It would
> be helpful to know :).
The hope was to simplify it, and in particular make it easier for me
to add the bits I needed for postcopy support; in the current code it
does a fairly complex merge procedure on each section ad/del call and
doesn't keep the structures in order. Trying to add any more rules to
that just makes it more and more complex.
The hope is that this is simpler because we just do a linear walk of the
set of sections, which means any merging just happens with the top
element, and also the list is in order that's easier to work with.
Then it should be easier for me to add the postcopy stuff which needs
to do some hugepage merging.
(Bizarrely, after having rewritten the code from scratch completely
differently, the LoC is within a few lines of each other)
Dave
> Stefan
--
Dr. David Alan Gilbert / dgilbert@redhat.com / Manchester, UK
next prev parent reply other threads:[~2017-12-01 16:19 UTC|newest]
Thread overview: 34+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-11-29 18:50 [Qemu-devel] [RFC 0/7] Rework vhost memory region updates Dr. David Alan Gilbert (git)
2017-11-29 18:50 ` [Qemu-devel] [RFC 1/7] memory: address_space_iterate Dr. David Alan Gilbert (git)
2017-11-29 18:50 ` [Qemu-devel] [RFC 2/7] vhost: Move log_dirty check Dr. David Alan Gilbert (git)
2017-11-29 18:50 ` [Qemu-devel] [RFC 3/7] vhost: New memory update functions Dr. David Alan Gilbert (git)
2017-11-30 15:48 ` Igor Mammedov
2017-12-05 18:25 ` Dr. David Alan Gilbert
2017-11-29 18:50 ` [Qemu-devel] [RFC 4/7] vhost: update_mem_cb implementation Dr. David Alan Gilbert (git)
2017-11-30 11:27 ` Igor Mammedov
2017-12-06 20:09 ` Dr. David Alan Gilbert
2017-11-29 18:50 ` [Qemu-devel] [RFC 5/7] vhost: Compare new and old memory lists Dr. David Alan Gilbert (git)
2017-11-29 18:50 ` [Qemu-devel] [RFC 6/7] vhost: Copy updated region data into device state Dr. David Alan Gilbert (git)
2017-11-29 18:50 ` [Qemu-devel] [RFC 7/7] vhost: Remove vhost_set_memory and children Dr. David Alan Gilbert (git)
2017-11-30 11:22 ` [Qemu-devel] [RFC 0/7] Rework vhost memory region updates Igor Mammedov
2017-11-30 12:08 ` Dr. David Alan Gilbert
2017-11-30 12:40 ` Igor Mammedov
2017-11-30 12:47 ` Dr. David Alan Gilbert
2017-11-30 12:58 ` Igor Mammedov
2017-11-30 13:06 ` Dr. David Alan Gilbert
2017-11-30 15:08 ` Igor Mammedov
2017-11-30 15:18 ` Dr. David Alan Gilbert
2017-11-30 15:32 ` Igor Mammedov
2017-11-30 15:41 ` Dr. David Alan Gilbert
2017-11-30 16:51 ` Greg Kurz
2017-12-01 10:02 ` Stefan Hajnoczi
2017-12-01 10:19 ` Dr. David Alan Gilbert [this message]
2017-12-01 14:22 ` [Qemu-devel] [RFC] vhost: check if ring mapping is still valid when building memmap Igor Mammedov
2017-12-07 18:17 ` Dr. David Alan Gilbert
2017-12-08 14:42 ` Igor Mammedov
2017-12-08 17:51 ` Dr. David Alan Gilbert
2017-12-11 9:37 ` Igor Mammedov
2017-12-11 11:03 ` Dr. David Alan Gilbert
2017-12-11 13:45 ` Igor Mammedov
2017-12-11 15:43 ` Dr. David Alan Gilbert
2017-12-08 20:45 ` Dr. David Alan Gilbert
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=20171201101908.GA2318@work-vm \
--to=dgilbert@redhat.com \
--cc=imammedo@redhat.com \
--cc=maxime.coquelin@redhat.com \
--cc=mst@redhat.com \
--cc=qemu-devel@nongnu.org \
--cc=stefanha@gmail.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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.