[Qemu-devel] [PATCH v7 0/7] Rework vhost memory region updates

Dr. David Alan Gilbert (git) posted 7 patches 6 years, 3 months ago
Patches applied successfully (tree, apply log)
git fetch https://github.com/patchew-project/qemu tags/patchew/20180119103924.332-1-dgilbert@redhat.com
Test checkpatch passed
Test docker-build@min-glib passed
Test docker-mingw@fedora passed
Test docker-quick@centos6 passed
Test ppc passed
Test s390x passed
hw/virtio/trace-events    |   6 +
hw/virtio/vhost.c         | 497 ++++++++++++++++------------------------------
include/hw/virtio/vhost.h |   5 +-
3 files changed, 180 insertions(+), 328 deletions(-)
[Qemu-devel] [PATCH v7 0/7] Rework vhost memory region updates
Posted by Dr. David Alan Gilbert (git) 6 years, 3 months ago
From: "Dr. David Alan Gilbert" <dgilbert@redhat.com>

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.

v7
  Avoid calling memcmp(NULL,NULL,0) in region list compare

v6
  Tidy ups from Igor
  The biggest change is moving the 'Move log_dirty check' to be
  the last patch in the set.

Dr. David Alan Gilbert (7):
  vhost: Build temporary section list and deref after commit
  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
  vhost: Move log_dirty check

 hw/virtio/trace-events    |   6 +
 hw/virtio/vhost.c         | 497 ++++++++++++++++------------------------------
 include/hw/virtio/vhost.h |   5 +-
 3 files changed, 180 insertions(+), 328 deletions(-)

-- 
2.14.3