Statistics
| Branch: | Revision:

root / migration.c @ c08d7424

History | View | Annotate | Download (14.9 kB)

# Date Author Comment
3f4331bf 10/29/2012 03:55 pm Aurelien Jarno

Merge branch 'queue/qmp' of git://repo.or.cz/qemu/qmp-unstable

  • 'queue/qmp' of git://repo.or.cz/qemu/qmp-unstable:
    migration: go to paused state after finishing incoming migration with -S
    qmp: handle stop/cont in INMIGRATE state
    hmp: fix info cpus for sparc targets
29ed72f1 10/24/2012 04:27 pm Paolo Bonzini

migration: go to paused state after finishing incoming migration with -S

At the end of migration the machine has started already, and cannot be
destroyed without losing the guest's data. Hence, prelaunch is the
wrong state. Go to the paused state instead. QEMU would reach that...

342ab8d1 10/23/2012 02:54 pm Paolo Bonzini

migration: centralize call to migrate_fd_error()

The call to migrate_fd_error() was missing for non-socket backends, so
centralize it in qmp_migrate().

Before:

(qemu) migrate fd:ffff
migrate: An undefined error has occurred
(qemu) info migrate...
e08c95ce 10/23/2012 02:54 pm Paolo Bonzini

migration: use qemu-sockets to establish Unix sockets

This makes migration-unix.c again a cut-and-paste job from migration-tcp.c,
exactly as it was in the beginning. :)

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

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

migration: avoid using error_is_set and thus relying on errp != NULL

The migration code is using errp to detect "internal" errors, this means
that it relies on errp being non-NULL.

No impact so far because our only QMP clients (the QMP marshaller and HMP)...

a2b41351 10/17/2012 07:35 pm Juan Quintela

savevm: make qemu_file_put_notify() return errors

Signed-off-by: Juan Quintela <>

Reviewed-by: Paolo Bonzini <>

749f7909 10/17/2012 07:34 pm Juan Quintela

buffered_file: unfold migrate_fd_wait_for_unfreeze

We only used it once, just remove the callback indirection.

Signed-off-by: Juan Quintela <>

11c76741 10/17/2012 07:34 pm Juan Quintela

buffered_file: unfold migrate_fd_close

We only used it once, just remove the callback indirection.

Signed-off-by: Juan Quintela <>

796b4b0f 10/17/2012 07:34 pm Juan Quintela

buffered_file: We can access directly to bandwidth_limit

Signed-off-by: Juan Quintela <>

Reviewed-by: Paolo Bonzini <>

9499743f 10/17/2012 07:34 pm Juan Quintela

migration: make migrate_fd_wait_for_unfreeze() return errors

Adjust all callers

Signed-off-by: Juan Quintela <>

Reviewed-by: Paolo Bonzini <>

97d4d961 10/17/2012 07:34 pm Juan Quintela

migration: store end_time in a local variable

Signed-off-by: Juan Quintela <>

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

9c5a9fcf 10/17/2012 07:34 pm Juan Quintela

migration: print total downtime for final phase of migration

Signed-off-by: Juan Quintela <>

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

859bc756 10/17/2012 07:34 pm Juan Quintela

migration: export migrate_get_current()

Signed-off-by: Juan Quintela <>

Reviewed-by: Paolo Bonzini <>

2c52ddf1 10/17/2012 07:34 pm Juan Quintela

migration: print expected downtime in info migrate

Signed-off-by: Juan Quintela <>

8d017193 10/17/2012 07:34 pm Juan Quintela

migration: Add dirty_pages_rate to query migrate output

It indicates how many pages were dirtied during the last second.

Signed-off-by: Juan Quintela <>

c87b015b 10/17/2012 07:34 pm Juan Quintela

buffered_file: unfold migrate_fd_put_buffer

We only used it once, just remove the callback indirection

Signed-off-by: Juan Quintela <>

Reviewed-by: Paolo Bonzini <>

2c9adcb8 10/17/2012 07:34 pm Juan Quintela

buffered_file: unfold migrate_fd_put_ready

We only use it once, just remove the callback indirection.

Signed-off-by: Juan Quintela <>

Reviewed-by: Paolo Bonzini <>

3202beca 09/26/2012 03:05 am Orit Wasserman

Clear handler only for valid fd

Signed-off-by: Orit Wasserman <>
Signed-off-by: Anthony Liguori <>

7aa939af 08/21/2012 09:06 pm Juan Quintela

migration: move total_time from ram stats to migration info

Signed-off-by: Juan Quintela <>
Signed-off-by: Luiz Capitulino <>

17ad9b35 08/08/2012 02:51 pm Orit Wasserman

Add XBZRLE to ram_save_block and ram_save_live

In the outgoing migration check to see if the page is cached and
changed, then send compressed page by using save_xbrle_page function.
In the incoming migration check to see if RAM_SAVE_FLAG_XBZRLE is set
and decompress the page (by using load_xbrle function)....

9e1ba4cc 08/08/2012 02:51 pm Orit Wasserman

Add migrate_set_cache_size command

Change XBZRLE cache size in bytes (the size should be a power of 2, it will be
rounded down to the nearest power of 2).
If XBZRLE cache size is too small there will be many cache miss.

New query-migrate-cache-size QMP command and 'info migrate_cache_size' HMP...

004d4c10 08/08/2012 02:51 pm Orit Wasserman

Add migration accounting for normal and duplicate pages

Signed-off-by: Benoit Hudzia <>
Signed-off-by: Petter Svard <>
Signed-off-by: Aidan Shribman <>
Signed-off-by: Orit Wasserman <>...

f36d55af 08/08/2012 02:51 pm Orit Wasserman

Add XBZRLE statistics

Signed-off-by: Benoit Hudzia <>
Signed-off-by: Petter Svard <>
Signed-off-by: Aidan Shribman <>
Signed-off-by: Orit Wasserman <>
Signed-off-by: Juan Quintela <>...

bbf6da32 08/08/2012 02:51 pm Orit Wasserman

Add migration capabilities

The management can query the current migration capabilities using
query-migrate-capabilities QMP command.
The user can use 'info migrate_capabilities' HMP command.
Currently only XBZRLE capability is available.

Signed-off-by: Orit Wasserman <>...

00458433 08/08/2012 02:51 pm Orit Wasserman

Add migrate-set-capabilities

The management can enable/disable a capability for the next migration by using
migrate-set-capabilities QMP command.
The user can use migrate_set_capability HMP command.

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

d5f8a570 06/29/2012 02:27 pm Juan Quintela

Add spent time for migration

We add time spent for migration to the output of "info migrate"
command. 'total_time' means time since the start fo migration if
migration is 'active', and total time of migration if migration is
completed. As we are also interested in transferred ram when...

6607ae23 06/29/2012 02:18 pm Isaku Yamahata

Add MigrationParams structure

Signed-off-by: Isaku Yamahata <>

d5c5dacc 05/10/2012 08:37 pm Amos Kong

use inet_listen()/inet_connect() to support ipv6 migration

Use help functions in qemu-socket.c for tcp migration,
which already support ipv6 addresses.

Currently errp will be set to UNDEFINED_ERROR when migration fails,
qemu would output "migration failed: ...", and current user can...

7b5d3aa2 05/08/2012 08:29 pm Gerd Hoffmann

wakeup on migration

Wakeup the guest when the live part of the migation is finished.
This avoids being in suspended state on migration, so we don't
have to save the is_suspended bit.

Signed-off-by: Gerd Hoffmann <>
Reviewed-by: Luiz Capitulino <>

901862cb 04/05/2012 05:28 pm Benoît Canet

migration: clear BDRV_O_INCOMING flags on end of incoming live migration

Signed-off-by: Benoît Canet <>
Reviewed-by: Stefan Hajnoczi <>
Signed-off-by: Kevin Wolf <>

539de124 03/15/2012 03:39 pm Luiz Capitulino

Purge migration of (almost) everything to do with monitors

The Monitor object is passed back and forth within the migration/savevm
code so that it can print errors and progress to the user.

However, that approach assumes a HMP monitor, being completely invalid...

e1c37d0e 03/15/2012 03:39 pm Luiz Capitulino

qapi: Convert migrate

The migrate command is one of those commands where HMP and QMP completely
mix up together. This made the conversion to the QAPI (which separates the
command into QMP and HMP parts) a bit difficult.

The first important change to be noticed is that this commit completes the...

31552529 02/17/2012 04:33 pm Paolo Bonzini

notifier: switch to QLIST

Notifiers do not need to access both ends of the list, and using
a QLIST also simplifies the API.

Signed-off-by: Paolo Bonzini <>
Signed-off-by: Anthony Liguori <>

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

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

migrate_fd_cleanup: accept any negative qemu_fclose() value as error

Also, we now return the qemu_fclose() value unchanged to the caller. For
reference, the migrate_fd_cleanup() callers are the following:

- migrate_fd_completed(): any negative value is considered an...

6cdedb07 12/06/2011 03:40 pm Luiz Capitulino

qapi: Convert migrate_cancel

Signed-off-by: Luiz Capitulino <>

4f0a993b 12/06/2011 03:40 pm Luiz Capitulino

qapi: Convert migrate_set_downtime

Signed-off-by: Luiz Capitulino <>

3dc85383 12/06/2011 03:40 pm Luiz Capitulino

qapi: Convert migrate_set_speed

Signed-off-by: Luiz Capitulino <>

0f15423c 11/21/2011 10:58 pm Anthony Liguori

block: allow migration to work with image files (v3)

Image files have two types of data: immutable data that describes things like
image size, backing files, etc. and mutable data that includes offset and
reference count tables.

Today, image formats aggressively cache mutable data to improve performance. In...

fa2756b7 11/21/2011 10:57 pm Anthony Liguori

migrate: add migration blockers

This lets different subsystems register an Error that is thrown whenever
migration is attempted. This works nicely because it gracefully supports
things like hotplug.

Right now, if multiple errors are registered, only one of them is reported....

1299c631 11/11/2011 08:49 pm Juan Quintela

migration: fix detached migration with fd

Migration with fd uses s->mon to pass the fd. But we only assign the
s->mon for !detached migration. Fix it. Once there add a comment
indicating that s->mon has two uses.

Bug reported by: Wen Congyang <>...

1fdc11c3 11/01/2011 06:50 pm Luiz Capitulino

Fix segfault on migration completion

A simple migration reproduces it:

1. Start the source VM with:

  1. qemu [...] -S

2. Start the destination VM with:

  1. qemu <source VM cmd-line> -incoming tcp:0:4444

3. In the source VM:

(qemu) migrate -d tcp:0:4444...
96b3d73f 10/31/2011 06:02 pm Anthony Liguori

Merge remote-tracking branch 'qmp/queue/qmp' into staging

Conflicts:
ui/spice-core.c

791e7c82 10/27/2011 04:48 pm Luiz Capitulino

qapi: Convert query-migrate

Signed-off-by: Anthony Liguori <>
Signed-off-by: Luiz Capitulino <>

afe2df69 10/25/2011 02:59 pm Gerd Hoffmann

migration: add status query functions

Add migration_is_active and migration_has_failed functions
to query migration state.

Signed-off-by: Gerd Hoffmann <>

a6e43daa 10/20/2011 04:46 pm Anthony Liguori

Merge remote-tracking branch 'quintela/migration-pull' into staging

48a2f4d6 10/20/2011 02:23 pm Juan Quintela

migration: Remove get_status() accessor

It is only used inside migration.c, and fields on that struct are
accessed all around the place on that file.

Signed-off-by: Juan Quintela <>

767de722 10/20/2011 02:23 pm Juan Quintela

migration: Remove migration cancel() callback

It is used only in one place

Signed-off-by: Juan Quintela <>

cab30143 10/20/2011 02:23 pm Juan Quintela

migration: Move exported functions to the end of the file

This means we can remove the two forward declarations.

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

17549e84 10/20/2011 02:23 pm Juan Quintela

migration: create accessor for current_migration

Signed-off-by: Juan Quintela <>

d0ae46c1 10/20/2011 02:23 pm Juan Quintela

migration: Use bandwidth_limit directly

Now that current_migration always exist, there is no reason for
max_throotle variable.

Signed-off-by: Juan Quintela <>

e0eb7390 10/20/2011 02:23 pm Juan Quintela

migration: Pass MigrationState in migration notifiers

Signed-off-by: Juan Quintela <>

7073693b 10/20/2011 02:23 pm Juan Quintela

migration: Export a function that tells if the migration has finished correctly

This will allow us to hide the state values.

Signed-off-by: Juan Quintela <>

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

migration: Make state definitions local

Signed-off-by: Juan Quintela <>

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

8b6b99b3 10/20/2011 02:23 pm Juan Quintela

migration: Make all posible migration functions static

I have to move two functions postions to avoid forward declarations

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

d5934dde 10/20/2011 02:23 pm Juan Quintela

migration: Introduce MIG_STATE_SETUP

Use MIG_STATE_ACTIVE only when migration has really started. Use this
new state to setup migration parameters. Change defines for an
anonymous struct.

Signed-off-by: Juan Quintela <>

67afff79 10/20/2011 02:23 pm Juan Quintela

migration: Refactor and simplify error checking in migrate_fd_put_ready

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

458cf28e 10/20/2011 02:23 pm Juan Quintela

migration: Introduce migrate_fd_completed() for consistency

This function is a bit different of the others that change the state,
in the sense that if migrate_fd_cleanup() returns an error, it set the
status to error, not completed.

Signed-off-by: Juan Quintela <>

92920cd7 10/20/2011 02:23 pm Juan Quintela

migration: Our release callback was just free

We called it from a single place, and always with state !=
MIG_STATE_ACTIVE. Just remove the whole callback. For users of the
notifier, notice that this is exactly the case where they don't care,
we are just freeing the state from previous failed migration (it can't...

dcd1d224 10/20/2011 02:23 pm Juan Quintela

migration: change has_error to contain errno values

We normally already have an errno value. When not, abuse EIO.

Signed-off-by: Juan Quintela <>

39346385 10/20/2011 02:23 pm Juan Quintela

migration: return real error code

make functions propagate errno, instead of just using -EIO. Add a
comment about what are the return value of qemu_savevm_state_iterate().

Signed-off-by: Juan Quintela <>

624b9cc2 10/20/2011 02:23 pm Juan Quintela

migration: rename qemu_file_has_error to qemu_file_get_error

Now the function returned errno, so it is better the new name.

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

dc7acc61 10/20/2011 02:23 pm Juan Quintela

migration: Use FdMigrationState instead of MigrationState when possible

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

c0b2ba46 10/20/2011 02:23 pm Juan Quintela

migration: simplify state assignmente

Once there, make sure that if we already know that there is one error,
just call migration_fd_cleanup() with the ERROR state.

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

e6494061 10/20/2011 02:23 pm Juan Quintela

migration: Check that migration is active before cancel it

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

2350e13c 10/20/2011 02:23 pm Yoshiaki Tamura

migration: add error handling to migrate_fd_put_notify().

Although migrate_fd_put_buffer() sets MIG_STATE_ERROR if it failed,
since migrate_fd_put_notify() isn't checking error of underlying
QEMUFile, those resources are kept open. This patch checks it and...

fdbecb5d 10/20/2011 02:23 pm Juan Quintela

migration: don't "write" when migration is not active

If migration is not active, just ignore writes.

Signed-off-by: Juan Quintela <>

af509450 10/20/2011 02:23 pm Juan Quintela

migration: set error if select return one error

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

8a9236f1 10/19/2011 03:48 pm Luiz Capitulino

runstate: Allow user to migrate twice

It should be a matter of allowing the transition POSTMIGRATE ->
FINISH_MIGRATE, but it turns out that the VM won't do the
transition the second time because it's already stopped.

So this commit also adds vm_stop_force_state() which performs...

0461d5a6 10/04/2011 05:02 pm Luiz Capitulino

RunState: Rename enum values as generated by the QAPI

Next commit will convert the query-status command to use the
RunState type as generated by the QAPI.

In order to "transparently" replace the current enum by the QAPI
one, we have to make some changes to some enum values....

1dfb4dd9 09/15/2011 10:39 pm Luiz Capitulino

Replace the VMSTOP macros with a proper state type

Today, when notifying a VM state change with vm_state_notify(),
we pass a VMSTOP macro as the 'reason' argument. This is not ideal
because the VMSTOP macros tell why qemu stopped and not exactly
what the current VM state is....

f5bbfba1 09/15/2011 10:39 pm Luiz Capitulino

RunState: Add additional states

Currently, only vm_start() and vm_stop() change the VM state.
That's, the state is only changed when starting or stopping the VM.

This commit adds the runstate_set() function, which makes it possible
to also do state transitions when the VM is stopped or running....

1bcef683 09/15/2011 10:39 pm Luiz Capitulino

Drop the incoming_expected global variable

Test against RSTATE_IN_MIGRATE instead.

Please, note that the RSTATE_IN_MIGRATE state is only set when all the
initial VM setup is done, while 'incoming_expected' was set right in
the beginning when parsing command-line options. Shouldn't be a problem...

1354869c 09/15/2011 10:39 pm Luiz Capitulino

Drop the vm_running global variable

Use runstate_is_running() instead, which is introduced by this commit.

Signed-off-by: Luiz Capitulino <>

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

84ec6552 08/05/2011 07:55 pm Jan Kiszka

Reorganize and fix monitor resume after migration

If migration failed in migrate_fd_put_buffer, the monitor may have been
resumed not only in the error path of that function but also once again
in migrate_fd_put_ready which is called unconditionally by
migrate_fd_connect....

9e8dd451 07/23/2011 07:26 pm Jan Kiszka

notifier: Pass data argument to callback

This allows to pass additional information to the notifier callback
which is useful if sender and receiver do not share any other distinct
data structure.

Will be used first for the clock reset notifier.

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

e07bbac5 02/14/2011 04:39 pm Jan Kiszka

Improve vm_stop reason declarations

Define and use dedicated constants for vm_stop reasons, they actually
have nothing to do with the EXCP_* defines used so far. At this chance,
specify more detailed reasons so that VM state change handlers can
evaluate them....

99a0db9b 01/24/2011 04:13 pm Gerd Hoffmann

add migration state change notifiers

This patch adds functions to register and unregister notifiers for
migration state changes and a function to query the migration state.
The notifier is called on every state change. Once after establishing a
new migration object (which is in active state then) and once when the...

dc912121 01/17/2011 06:22 pm Alex Williamson

savevm: Fix no_migrate

The no_migrate save state flag is currently only checked in the
last phase of migration. This means that we potentially waste
a lot of time and bandwidth with the live state handlers before
we ever check the no_migrate flags. The error message printed...

eff06c40 12/09/2010 12:47 pm Michael S. Tsirkin

migration/savevm: no need to flush requests

There's no need to flush requests after vmstop
as vmstop does it for us automatically now.

Signed-off-by: Michael S. Tsirkin <>
Tested-by: Jason Wang <>

3d002df3 12/02/2010 09:13 pm Michael S. Tsirkin

migration: allow rate > 4g

I'd like to disable bandwidth limit or make it very high,
Use int64_t all over to make values >= 4g work.

Signed-off-by: Michael S. Tsirkin <>
Tested-by: Jason Wang <>

ed3d4a80 11/03/2010 07:48 pm Jes Sorensen

Switch migrate_set_speed() to take an 'o' argument rather than a float.

Clarify default value of MB in migration speed argument in monitor, if
no suffix is specified. This differ from previous default of bytes,
but is consistent with the rest of the places where we accept a size...

e447b1a6 08/19/2010 04:44 pm Marcelo Tosatti

set proper migration status on ->write error (v5)

If ->write fails, declare migration status as MIG_STATE_ERROR.

Also, in buffered_file.c, ->close the object in case of an
error.

Fixes "migrate -d "exec:dd of=file", where dd fails to open file.

Signed-off-by: Marcelo Tosatti <>...

8e84865e 07/31/2010 12:14 am Amit Shah

migration: Accept 'cont' only after successful incoming migration

When a 'cont' is issued on a VM that's just waiting for an incoming
migration, the VM reboots and boots into the guest, possibly corrupting
its storage since it could be shared with another VM running elsewhere....

eb159d13 07/01/2010 08:27 pm Luiz Capitulino

Monitor: handle optional '-' arg as a bool

Historically, user monitor arguments beginning with '-' (eg. '-f')
were passed as integers down to handlers.

I've maintained this behavior in the new monitor because we didn't
have a boolean type at the very beginning of QMP. Today we have it...

8ca5e801 06/22/2010 11:15 pm Juan Quintela

Exit if incoming migration fails

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

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

Factorize common migration incoming code

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

faa1f8dd 06/14/2010 11:46 pm Yoshiaki Tamura

migration: use qemu_free() instead of free().

Although there is no difference, other migration related code use
qemu_free(), and it should be better to be consistent.

Signed-off-by: Yoshiaki Tamura <>
Signed-off-by: Anthony Liguori <>

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

637503d1 06/01/2010 09:48 pm Luiz Capitulino

Monitor: Drop QMP documentation from code

Previous commit added QMP documentation to the qemu-monitor.hx
file, it's is a copy of this information.

While it's good to keep it near code, maintaining two copies of
the same information is too hard and has little benefit as we...

b5d17adb 02/19/2010 11:18 pm Luiz Capitulino

Monitor: Convert do_migrate() to cmd_new_ret()

While there I'm also dropping a unneeded else clause (the last
one in the function).

Signed-off-by: Luiz Capitulino <>
Signed-off-by: Anthony Liguori <>

ef4b7eee 02/19/2010 11:18 pm Luiz Capitulino

Monitor: Convert simple handlers to cmd_new_ret()

The following handlers always succeed and hence can be converted
to cmd_new_ret() in the same commit.

- do_stop()
- do_quit()
- do_system_reset()
- do_system_powerdown()
- do_migrate_cancel()
- do_qmp_capabilities()...