qemu-devel
[Top][All Lists]
Advanced

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

Re: [Qemu-devel] [PULL 00/34] migration thread and queue


From: Anthony Liguori
Subject: Re: [Qemu-devel] [PULL 00/34] migration thread and queue
Date: Fri, 21 Dec 2012 20:22:53 -0600
User-agent: Notmuch/0.13.2+93~ged93d79 (http://notmuchmail.org) Emacs/23.3.1 (x86_64-pc-linux-gnu)

Juan Quintela <address@hidden> writes:

> Hi
>
> Changes for yesterday:
> - Paolo Acked the series
> - Rebaso on top of today git (only conflicts were due to header re-shuffle)
>
> Please pull.

Pulled. Thanks.

Regards,

Anthony Liguori

>
> [20121219]
>
> This is my queue for migration-thread and patches associated.  This
> integrates review comments & code for Paolo.  This is the subset from
> both approachs that we agreed with. rest of patches need more review
> and are not here.
>
> Migrating and idle guest with upstwream:
>
> (qemu) info migrate
> capabilities: xbzrle: off
> Migration status: completed
> total time: 34251 milliseconds
> downtime: 492 milliseconds
> transferred ram: 762458 kbytes
> remaining ram: 0 kbytes
> total ram: 14688768 kbytes
> duplicate: 3492606 pages
> normal: 189762 pages
> normal bytes: 759048 kbytes
>
> with this series of patches.
>
> (qemu) info migrate
> capabilities: xbzrle: off
> Migration status: completed
> total time: 30712 milliseconds
> downtime: 29 milliseconds
> transferred ram: 738857 kbytes
> remaining ram: 0 kbytes
> total ram: 14688768 kbytes
> duplicate: 3503423 pages
> normal: 176671 pages
> normal bytes: 706684 kbytes
>
> Notice the big difference in downtime.  And that is also seen inside
> the guest a program that just do an idle loop seeing how "long" it
> takes to wait for 10ms.
>
> with upstream:
>
> address@hidden ~]# ./timer
> delay of 452 ms
> delay of 114 ms
> delay of 136 ms
> delay of 135 ms
> delay of 136 ms
> delay of 131 ms
> delay of 134 ms
>
> with this series of patches, wait never takes 100ms, nothing is printed.
>
> Please pull.
>
> Thanks, Juan.
>
>
> The following changes since commit 27dd7730582be85c7d4f680f5f71146629809c86:
>
>   Merge remote-tracking branch 'bonzini/header-dirs' into staging (2012-12-19 
> 17:15:39 -0600)
>
> are available in the git repository at:
>
>
>   git://repo.or.cz/qemu/quintela.git thread-20121220.next
>
> for you to fetch changes up to 9848a40427cd76628d04d918fa4751c542527915:
>
>   migration: merge QEMUFileBuffered into MigrationState (2012-12-20
>   23:09:40 +0100)
>
> ----------------------------------------------------------------
> Juan Quintela (25):
>       migration: include qemu-file.h
>       migration-fd: remove duplicate include
>       buffered_file: Move from using a timer to use a thread
>       migration: make qemu_fopen_ops_buffered() return void
>       migration: move migration thread init code to migrate_fd_put_ready
>       migration: make writes blocking
>       migration: remove unfreeze logic
>       migration: just lock migrate_fd_put_ready
>       buffered_file: Unfold the trick to restart generating migration data
>       buffered_file: don't flush on put buffer
>       buffered_file: unfold buffered_append in buffered_put_buffer
>       savevm: New save live migration method: pending
>       migration: move buffered_file.c code into migration.c
>       migration: add XFER_LIMIT_RATIO
>       migration: move migration_fd_put_ready()
>       migration: Inline qemu_fopen_ops_buffered into migrate_fd_connect
>       migration: move migration notifier
>       ram: rename last_block to last_seen_block
>       ram: Add last_sent_block
>       memory: introduce memory_region_test_and_clear_dirty
>       ram: Use memory_region_test_and_clear_dirty
>       ram: optimize migration bitmap walking
>       ram: account the amount of transferred ram better
>       ram: refactor ram_save_block() return value
>       migration: merge QEMUFileBuffered into MigrationState
>
> Paolo Bonzini (7):
>       migration: fix migration_bitmap leak
>       buffered_file: do not send more than s->bytes_xfer bytes per tick
>       migration: remove double call to migrate_fd_close
>       exec: change ramlist from MRU order to a 1-item cache
>       exec: change RAM list to a TAILQ
>       exec: sort the memory from biggest to smallest
>       migration: fix qemu_get_fd for BufferedFile
>
> Umesh Deshpande (2):
>       add a version number to ram_list
>       protect the ramlist with a separate mutex
>
>  Makefile.objs                 |   3 +-
>  arch_init.c                   | 245 +++++++++++++-------------
>  block-migration.c             |  49 ++----
>  buffered_file.c               | 268 -----------------------------
>  buffered_file.h               |  22 ---
>  dump.c                        |   8 +-
>  exec.c                        | 128 +++++++++-----
>  include/exec/cpu-all.h        |  15 +-
>  include/exec/memory.h         |  16 ++
>  include/migration/migration.h |  13 +-
>  include/migration/qemu-file.h |   5 -
>  include/migration/vmstate.h   |   1 +
>  include/sysemu/sysemu.h       |   1 +
>  memory.c                      |  16 ++
>  memory_mapping.c              |   4 +-
>  migration-exec.c              |   3 +-
>  migration-fd.c                |   4 +-
>  migration-tcp.c               |   3 +-
>  migration-unix.c              |   3 +-
>  migration.c                   | 390 
> +++++++++++++++++++++++++++++++-----------
>  savevm.c                      |  24 ++-
>  target-i386/arch_dump.c       |   2 +-
>  22 files changed, 600 insertions(+), 623 deletions(-)
>  delete mode 100644 buffered_file.c
>  delete mode 100644 buffered_file.h



reply via email to

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