Statistics
| Branch: | Revision:

root / migration-exec.c @ f487b677

History | View | Annotate | Download (1.7 kB)

# Date Author Comment
b352365f 03/11/2013 02:32 pm Paolo Bonzini

migration: eliminate s->migration_file

The indirection is useless now. Backends can open s->file directly.

Reviewed-by: Orit Wasserman <>
Reviewed-by: Juan Quintela <>
Signed-off-by: Paolo Bonzini <>...

817b9ed5 03/11/2013 02:32 pm Paolo Bonzini

migration: merge qemu_popen_cmd with qemu_popen

There is no reason for outgoing exec migration to do popen manually
anymore (the reason used to be that we needed the FILE* to make it
non-blocking). Use qemu_popen_cmd.

Reviewed-by: Orit Wasserman <>...

13c7b2da 03/11/2013 02:32 pm Paolo Bonzini

qemu-file: check exit status when closing a pipe QEMUFile

This is what exec_close does. Move this to the underlying QEMUFile.

Reviewed-by: Orit Wasserman <>
Reviewed-by: Juan Quintela <>
Signed-off-by: Paolo Bonzini <>...

f8bbc128 03/11/2013 02:32 pm Paolo Bonzini

migration: use QEMUFile for migration channel lifetime

As a start, use QEMUFile to store the destination and close it.
qemu_get_fd gets a file descriptor that will be used by the write
callbacks.

Reviewed-by: Orit Wasserman <>
Reviewed-by: Juan Quintela <>...

e6a1cf21 03/11/2013 02:32 pm Paolo Bonzini

migration: use QEMUFile for writing outgoing migration data

Second, drop the file descriptor indirection, and write directly to the
QEMUFile.

Reviewed-by: Orit Wasserman <>
Reviewed-by: Juan Quintela <>
Signed-off-by: Paolo Bonzini <>...

dd217b87 12/21/2012 12:09 am Juan Quintela

migration: make writes blocking

Move all the writes to the migration_thread, and make writings
blocking. Notice that are still using the iothread for everything
that we do.

Signed-off-by: Juan Quintela <>

557ec5a0 12/20/2012 11:48 pm Juan Quintela

migration: include qemu-file.h

They don't use/know anything about buffered-file.

Signed-off-by: Juan Quintela <>

1de7afc9 12/19/2012 09:32 am Paolo Bonzini

misc: move include files to include/qemu/

Signed-off-by: Paolo Bonzini <>

caf71f86 12/19/2012 09:31 am Paolo Bonzini

migration: move include files to include/migration/

Signed-off-by: Paolo Bonzini <>

737e150e 12/19/2012 09:31 am Paolo Bonzini

block: move include files to include/block/

Signed-off-by: Paolo Bonzini <>

f8fe7964 12/19/2012 09:29 am Paolo Bonzini

janitor: do not include qemu-char everywhere

Touching char/char.h basically causes the whole of QEMU to
be rebuilt. Avoid this, it is usually unnecessary.

Signed-off-by: Paolo Bonzini <>

a6ef2909 11/02/2012 07:35 pm Paolo Bonzini

migration: clean up server sockets and handlers before invoking process_incoming_migration

A first step towards making a common "suffix" for all migration protocols,
and moving it to process_incoming_migration.

Reviewed-by: Orit Wasserman <>...

6c360136 11/02/2012 07:35 pm Paolo Bonzini

migration: xxx_close will only be called once

No need to test s->fd again, it is tested in the caller.

Reviewed-by: Orit Wasserman <>
Signed-off-by: Paolo Bonzini <>

1c12e1f5 11/02/2012 07:35 pm Paolo Bonzini

migration: move qemu_fclose to process_incoming_migration

The common suffix is now just process_incoming_migration.

Reviewed-by: Orit Wasserman <>
Signed-off-by: Paolo Bonzini <>

d263a20b 11/02/2012 07:35 pm Paolo Bonzini

migration: replace qemu_stdio_fd with qemu_get_fd

Reviewed-by: Orit Wasserman <>
Signed-off-by: Paolo Bonzini <>

f37afb5a 10/23/2012 02:54 pm Paolo Bonzini

migration (outgoing): add error propagation for all protocols

Error propagation is already there for socket backends. Add it to other
protocols, simplifying code that tests for errors that will never happen.
With all protocols understanding Error, the code can be simplified...

43eaae28 10/23/2012 02:54 pm Paolo Bonzini

migration (incoming): add error propagation to fd and exec protocols

And remove the superfluous integer return value.

Reviewed-by: Luiz Capitulino <>
Signed-off-by: Paolo Bonzini <>

6b620ca3 01/13/2012 06:55 pm Paolo Bonzini

prepare for future GPLv2+ relicensing

All files under GPLv2 will get GPLv2+ changes starting tomorrow.
event_notifier.c and exec-obsolete.h were only ever touched by Red Hat
employees and can be relicensed now.

Signed-off-by: Paolo Bonzini <>...

e375fe34 12/12/2011 07:47 pm Eduardo Habkost

exec_close(): return -errno on errors (v2)

All qemu_fclose() callers were already changed to accept any negative
value as error, so we now can change it to return -errno.

When the process exits with a non-zero exit code, we return -EIO to as a
fake errno value....

ce812673 12/12/2011 07:47 pm Eduardo Habkost

exec_close(): accept any negative value as qemu_fclose() error

Note that we don't return the unchanged return value back yet, because
we need to change all qemu_fclose() callers to accept any positive value
as success.

Signed-off-by: Eduardo Habkost <>...

3f77fc55 10/20/2011 02:23 pm Juan Quintela

migration: Fold MigrationState into FdMigrationState

Signed-off-by: Juan Quintela <>
Reviewed-by: Anthony Liguori <>

22f00a44 10/20/2011 02:23 pm Juan Quintela

migration: Rename FdMigrationState MigrationState

Signed-off-by: Juan Quintela <>
Reviewed-by: Anthony Liguori <>

0edda1c4 10/20/2011 02:23 pm Juan Quintela

migration: Refactor MigrationState creation

Signed-off-by: Juan Quintela <>
Reviewed-by: Anthony Liguori <>

07af4452 10/20/2011 02:23 pm Juan Quintela

migration: move migrate_new to do_migrate

Once there, remove all parameters that don't need to be passed to
*start_outgoing_migration() functions

Signed-off-by: Juan Quintela <>
Reviewed-by: Anthony Liguori <>

7be4363a 10/20/2011 02:23 pm Juan Quintela

migration: Make *start_outgoing_migration return FdMigrationState

Signed-off-by: Juan Quintela <>
Reviewed-by: Anthony Liguori <>

7267c094 08/21/2011 07:01 am Anthony Liguori

Use glib memory allocation and free functions

qemu_malloc/qemu_free no longer exist after this commit.

Signed-off-by: Anthony Liguori <>

a08784dd 04/15/2011 09:25 pm Blue Swirl

Remove unused sysemu.h include directives

Remove unused sysemu.h include directives to speed up build
with the following patches.

Signed-off-by: Blue Swirl <>

511c0231 06/22/2010 11:15 pm Juan Quintela

Factorize common migration incoming code

Signed-off-by: Juan Quintela <>
Signed-off-by: Anthony Liguori <>

0ffbba35 06/04/2010 11:01 pm Blue Swirl

migration-exec: fix OpenBSD build warning

Add include directives to get WIFEXITED and WEXITSTATUS macros defined.

Fixes warnings:
CC migration-exec.o
/src/qemu/migration-exec.c: In function `exec_close':
/src/qemu/migration-exec.c:53: warning: implicit declaration of function `WIFEXITED'...

41ef56e6 06/03/2010 10:55 pm Anthony Liguori

migration: respect exit status with exec:

This patch makes sure that if the exec: process exits with a non-zero return
status, we treat the migration as failed.

This fixes https://bugs.launchpad.net/qemu/+bug/391879

Signed-off-by: Anthony Liguori <>

1c39e2a2 03/19/2010 10:27 pm Juan Quintela

remove useless cast

values are already pointers, no need to cast them to void *

Signed-off-by: Juan Quintela <>
Signed-off-by: Anthony Liguori <>

cfaf6d36 03/17/2010 06:16 pm Juan Quintela

migration: Clear fd also in error cases

Not clearing the fd and closing the file makes qemu spin using 100%CPU
after incoming migration error.

See for instance bug:
https://bugzilla.redhat.com/show_bug.cgi?id=518032

Signed-off-by: Juan Quintela <>...

d0f2c4c6 02/07/2010 01:03 am malc

Do not use dprintf

dprintf is already claimed by POSIX1, and on at least one system
is implemented as a macro

[1] http://www.opengroup.org/onlinepubs/9699919799/functions/dprintf.html

Signed-off-by: malc <>

f327aa0c 12/03/2009 06:48 pm Jan Kiszka

live migration: Propagate output monitor to callback handler

In order to allow proper progress reporting to the monitor that
initiated the migration, forward the monitor reference through the
migration layer down to SaveLiveStateHandler.

Signed-off-by: Jan Kiszka <>...

c163b5ca 11/17/2009 04:49 pm lirans@il.ibm.com

Block live migration

This patch introduces block migration called during live migration. Block
are being copied to the destination in an async way. First the code will
transfer the whole disk and then transfer all dirty blocks accumulted during
the migration....

7f79dd28 08/24/2009 04:02 pm Paolo Bonzini

unify popen/fopen qemu wrappers

While reading Chris's code for fd migration I noticed the duplication
between QEMUFilePopen and QEMUFileStdio. This fixes it, and makes
qemu_fopen more similar qemu_popen.

Signed-off-by: Paolo Bonzini <>...

90750009 08/24/2009 04:01 pm Chris Lalancette

Fix detached migration with exec.

When trying to do detached migration with exec, I found that
the monitor wouldn't always return in a timely manner. I
tracked this down to exec_start_outgoing_migration. It
appeared we were setting the fd to NONBLOCK'ing, but in...

d399f677 07/30/2009 05:50 pm Paolo Bonzini

fix migration to obey -S

Since migration returns right away, starting the VM right
after calling qemu_start_incoming_migration is wrong even
if -S is not passed. We have to do this after migration
has completed.

Cc: Glauber Costa <>
Cc: Anthony Liguori <>...

89befdd1 07/17/2009 01:28 am Paolo Bonzini

honor -S on incoming migration

-S is not honored by qemu on incoming migration. If a domain is migrated
while paused, thus, it will start running on the remote machine; this
is wrong.

Given the trivial patch to fix this, it looks more like a thinko
than anything else, probably dating back to the qemu-kvm merge....

8a43b1ea 05/27/2009 05:46 pm Chris Lalancette

Allow monitor interaction when using migrate -exec

All,
I've recently been playing around with migration via exec. Unfortunately,
when starting the incoming qemu process with "-incoming exec:cmd", it suffers
the same problem that -incoming tcp used to suffer; namely, that you can't...

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...

1eec614b 02/06/2009 12:06 am aliguori

toplevel: remove error handling from qemu_malloc() callers (Avi Kivity)

Signed-off-by: Avi Kivity <>
Signed-off-by: Anthony Liguori <>

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

8ad9fa5d 11/13/2008 12:29 am aliguori

Fix brown-paper-bag bugs from live-migration patch (Charles Duffy)

In TCP migration, prevent an endless loop trying to retrieve error status. In
exec migration, set the close pointer in the FdMigrationState structure.

Color me embarrassed.

Signed-off-by: Charles Duffy <>...

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...