Statistics
| Branch: | Revision:

root / migration.c @ ac72472b

History | View | Annotate | Download (8.2 kB)

# Date Author Comment
5ac1fad3 08/28/2009 03:33 am Paolo Bonzini

add file descriptor migration

Signed-off-by: Paolo Bonzini <>
Cc: Chris Lalancette <>
Signed-off-by: Anthony Liguori <>

4951f65b 08/24/2009 04:01 pm Chris Lalancette

Migration via unix sockets.

Implement migration via unix sockets. While you can fake this using
exec and netcat, this involves forking another process and is
generally not very nice. By doing this directly in qemu, we can avoid
the copy through the external nc command. This is useful for...

0884657b 07/10/2009 09:44 pm Glauber Costa

flush pending aio requests

When we finish migration, there may be pending async io requests
in flight. If we don't flush it before stage3 starting, it might be
the case that the guest loses it.

Signed-off-by: Glauber Costa <>
Signed-off-by: Anthony Liguori <>

eeb34af9 07/10/2009 12:58 am Anthony Liguori

Make sure to only vm_start() a failed migration if we were running to begin
with.

Signed-off-by: Anthony Liguori <>

2ea42952 06/16/2009 11:52 pm Glauber Costa

set migration max downtime

provide a monitor command to allow one to set the maximum
downtime he is willing to suffer during migration, in seconds.
"ms", "us", "ns" and "s" are accepted as modifiers.

This parameter will be used by ram_save_live() code to determine...

a0a3fd60 06/16/2009 11:45 pm Glauber Costa

add non-arbitrary migration stop condition

Currently, we're entering migration's stage 3 when
a treshold of 10 pages remain to be transferred in the system.

This has hurt some users. However, any proposed threshold is
arbitrary by nature, and would only shift the annoyance....

e19252d3 06/14/2009 03:19 am Uri Lublin

migrate_fd_close: delete associated io-handler before closing the fd

It may happen that the io-handler is still registered. That causes
select() to return with EBADF, not calling handlers for other fds.

The io-handler would be registered when (on the source) the whole state...

daa91de2 05/22/2009 06:50 pm Glauber Costa

allow changing the speed of a running migration

This patch allow us to call migrate_set_speed on running
migrations. This should allow mgmt tools to increase the allocated
bandwidth of a running migration if there is no progress, and they
really want the migration to succeed....

9f9e28cd 05/22/2009 06:50 pm Glauber Costa

augment info migrate with page status

This patch augments info migrate output with status about:
  • ram bytes remaining
  • ram bytes transferred
  • ram bytes total

This should be enough for management tools to realize
whether or not there is progress in migration. We can...

95b134ea 05/20/2009 05:12 pm Uri Lublin

migrate.c: migrate_fd_put_buffer: Do not busyloop: stop writing if EWOULDBLOCK

The migration code is non-blocking, designed for live migration.

Practically migrate_fd_put_buffer busy-loops trying to write, as
on many machines EWOULDBLOCK==EAGAIN (look in include/asm-generic/errno.h)....

b161d123 04/05/2009 10:30 pm aliguori

propagate error on failed completion (Glauber Costa)

migrate_fd_put_ready() calls qemu_savevm_state_complete(),
but the later can fail.

If it happens, re-start the vm and propagate the error up

Based on a patch by Yaniv Kamay

Signed-off-by: Glauber Costa <>...

cde76ee1 03/06/2009 01:01 am aliguori

monitor: Introduce MONITOR_USE_READLINE flag (Jan Kiszka)

This allows to create monitor terminals that do not make use of the
interactive readline back-end but rather send complete commands. The
pass-through monitor interface of the gdbstub will be an example....

731b0364 03/06/2009 01:01 am aliguori

monitor: Decouple terminals (Jan Kiszka)

Currently all registered (and activate) monitor terminals work in
broadcast mode: Everyone sees what someone else types on some other
terminal and what the monitor reports back. This model is broken when
you have a management monitor terminal that is automatically operated...

376253ec 03/06/2009 01:01 am aliguori

monitor: Rework API (Jan Kiszka)

Refactor the monitor API and prepare it for decoupled terminals:
term_print functions are renamed to monitor_* and all monitor services
gain a new parameter (mon) that will once refer to the monitor instance
the output is supposed to appear on. However, the argument remains...

065e2813 11/11/2008 06:46 pm aliguori

Reintroduce migrate-to-exec: support (Charles Duffy)

KVM's live migration support included support for exec: URLs, allowing system
state to be written or received via an arbitrary popen()ed subprocess. This
provides a convenient way to pipe state through a compression algorithm or an...

ff8d81d8 10/25/2008 01:10 am aliguori

Fix whitespace in migration code.

Replace tabs with spaces.

Signed-off-by: Anthony Liguori <>

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5527 c046a42c-6fe2-441c-8c8c-71466251a162

34c9dd8e 10/13/2008 06:14 am aliguori

Introduce TCP live migration protocol

This patch introduces a tcp protocol for live migration. It can be used as
follows:

qemu-system-x86_64 -hda ~/images/linux-test.img -monitor stdio
<vm runs for a while>
(qemu) migrate tcp:localhost:1025

On the same system:...

5bb7910a 10/13/2008 06:12 am aliguori

Introduce UI for live migration

This patch introduces a command line parameter and monitor command for starting
a live migration. The next patch will provide an example of how to use these
parameters.

Signed-off-by: Anthony Liguori <>...