Revision c8847f55656a26cef9a864689e75379410280d9b authored by Dr. David Alan Gilbert on 05 February 2018, 09:13:37 UTC, committed by Michael Roth on 12 February 2018, 03:05:39 UTC
In e91d895 I added the new pause-before-switchover mechanism
to allow migration completion to be delayed; this changes the
last state prior to completion to MIGRATE_STATUS_DEVICE rather
than MIGRATE_STATUS_ACTIVE.

Fix the failure path in migration_completion to recover the block
devices if it fails in MIGRATE_STATUS_DEVICE, not just the
MIGRATE_STATUS_ACTIVE that it previously had.

This corresponds to rh bz:
  https://bugzilla.redhat.com/show_bug.cgi?id=1538494
whose symptom is an occasional source crash on a failed migration.

Fixes: e91d8951d59d483f085f
Signed-off-by: Dr. David Alan Gilbert <dgilbert@redhat.com>
Reviewed-by: Peter Xu <peterx@redhat.com>
Signed-off-by: Dr. David Alan Gilbert <dgilbert@redhat.com>
(cherry picked from commit 6039dd5b1c45d76403b9dcadd2afd7efd8f42330)
Signed-off-by: Michael Roth <mdroth@linux.vnet.ibm.com>
1 parent b9eec80
Raw File
qemu-ga.texi
@example
@c man begin SYNOPSIS
@command{qemu-ga} [@var{OPTIONS}]
@c man end
@end example

@c man begin DESCRIPTION

The QEMU Guest Agent is a daemon intended to be run within virtual
machines. It allows the hypervisor host to perform various operations
in the guest, such as:

@itemize
@item
get information from the guest
@item
set the guest's system time
@item
read/write a file
@item
sync and freeze the filesystems
@item
suspend the guest
@item
reconfigure guest local processors
@item
set user's password
@item
...
@end itemize

qemu-ga will read a system configuration file on startup (located at
@file{/etc/qemu/qemu-ga.conf} by default), then parse remaining
configuration options on the command line. For the same key, the last
option wins, but the lists accumulate (see below for configuration
file format).

@c man end

@c man begin OPTIONS
@table @option
@item -m, --method=@var{method}
  Transport method: one of @samp{unix-listen}, @samp{virtio-serial}, or
  @samp{isa-serial} (@samp{virtio-serial} is the default).

@item -p, --path=@var{path}
  Device/socket path (the default for virtio-serial is
  @samp{/dev/virtio-ports/org.qemu.guest_agent.0},
  the default for isa-serial is @samp{/dev/ttyS0})

@item -l, --logfile=@var{path}
  Set log file path (default is stderr).

@item -f, --pidfile=@var{path}
  Specify pid file (default is @samp{/var/run/qemu-ga.pid}).

@item -F, --fsfreeze-hook=@var{path}
  Enable fsfreeze hook. Accepts an optional argument that specifies
  script to run on freeze/thaw. Script will be called with
  'freeze'/'thaw' arguments accordingly (default is
  @samp{/etc/qemu/fsfreeze-hook}). If using -F with an argument, do
  not follow -F with a space (for example:
  @samp{-F/var/run/fsfreezehook.sh}).

@item -t, --statedir=@var{path}
  Specify the directory to store state information (absolute paths only,
  default is @samp{/var/run}).

@item -v, --verbose
  Log extra debugging information.

@item -V, --version
  Print version information and exit.

@item -d, --daemon
  Daemonize after startup (detach from terminal).

@item -b, --blacklist=@var{list}
  Comma-separated list of RPCs to disable (no spaces, @samp{?} to list
  available RPCs).

@item -D, --dump-conf
  Dump the configuration in a format compatible with @file{qemu-ga.conf}
  and exit.

@item -h, --help
  Display this help and exit.
@end table

@c man end

@c man begin FILES

The syntax of the @file{qemu-ga.conf} configuration file follows the
Desktop Entry Specification, here is a quick summary: it consists of
groups of key-value pairs, interspersed with comments.

@example
# qemu-ga configuration sample
[general]
daemonize = 0
pidfile = /var/run/qemu-ga.pid
verbose = 0
method = virtio-serial
path = /dev/virtio-ports/org.qemu.guest_agent.0
statedir = /var/run
@end example

The list of keys follows the command line options:
@table @option
@item daemon= boolean
@item method= string
@item path= string
@item logfile= string
@item pidfile= string
@item fsfreeze-hook= string
@item statedir= string
@item verbose= boolean
@item blacklist= string list
@end table

@c man end

@ignore

@setfilename qemu-ga
@settitle QEMU Guest Agent

@c man begin AUTHOR
Michael Roth <mdroth@linux.vnet.ibm.com>
@c man end

@c man begin SEEALSO
qemu(1)
@c man end

@end ignore
back to top