On 07/23/2011 05:07 AM, Alexander Graf wrote:
On 20.07.2011, at 22:19, Michael Roth wrote:
This is the actual guest daemon, it listens for requests over a
virtio-serial/isa-serial/unix socket channel and routes them through
to dispatch routines, and writes the results back to the channel in
a manner similar to QMP.
A shorthand invocation:
qemu-ga -d
Is equivalent to:
qemu-ga -m virtio-serial -p /dev/virtio-ports/org.qemu.guest_agent.0 \
-f /var/run/qemu-ga.pid -d
Signed-off-by: Michael Roth<mdr...@linux.vnet.ibm.com>
A rebase on top of current HEAD gave me the following on openSUSE 11.1 PPC:
agraf@lychee:/home/agraf/release/qemu> make
CC qemu-ga.o
qemu-ga.c:40: error: expected specifier-qualifier-list before ‘GSocket’
qemu-ga.c: In function ‘ga_logging_enabled’:
qemu-ga.c:127: error: ‘GAState’ has no member named ‘logging_enabled’
qemu-ga.c: In function ‘ga_disable_logging’:
qemu-ga.c:132: error: ‘GAState’ has no member named ‘logging_enabled’
qemu-ga.c: In function ‘ga_enable_logging’:
qemu-ga.c:137: error: ‘GAState’ has no member named ‘logging_enabled’
qemu-ga.c: In function ‘ga_log’:
qemu-ga.c:154: error: ‘GAState’ has no member named ‘log_level’
qemu-ga.c:156: error: ‘GAState’ has no member named ‘log_file’
qemu-ga.c:158: error: ‘GAState’ has no member named ‘log_file’
qemu-ga.c: In function ‘process_command’:
qemu-ga.c:284: error: ‘GAState’ has no member named ‘conn_channel’
qemu-ga.c: In function ‘process_event’:
qemu-ga.c:336: error: ‘GAState’ has no member named ‘conn_channel’
qemu-ga.c: In function ‘conn_channel_read’:
qemu-ga.c:372: error: ‘GAState’ has no member named ‘virtio’
qemu-ga.c:379: error: ‘GAState’ has no member named ‘virtio’
qemu-ga.c: In function ‘conn_channel_add’:
qemu-ga.c:396: error: ‘GAState’ has no member named ‘conn_channel’
qemu-ga.c:407: error: ‘GAState’ has no member named ‘conn_channel’
qemu-ga.c: In function ‘listen_channel_accept’:
qemu-ga.c:420: error: ‘GAState’ has no member named ‘conn_sock’
cc1: warnings being treated as errors
qemu-ga.c:420: error: implicit declaration of function ‘g_socket_accept’
qemu-ga.c:420: error: nested extern declaration of ‘g_socket_accept’
qemu-ga.c:420: error: ‘GAState’ has no member named ‘listen_sock’
qemu-ga.c:426: error: implicit declaration of function ‘g_socket_get_fd’
qemu-ga.c:426: error: nested extern declaration of ‘g_socket_get_fd’
qemu-ga.c:426: error: ‘GAState’ has no member named ‘conn_sock’
qemu-ga.c: In function ‘listen_channel_add’:
qemu-ga.c:446: error: ‘GAState’ has no member named ‘listen_channel’
qemu-ga.c:447: error: ‘GAState’ has no member named ‘listen_sock’
qemu-ga.c:448: error: ‘GAState’ has no member named ‘listen_sock’
qemu-ga.c:450: error: ‘GAState’ has no member named ‘listen_sock’
qemu-ga.c:450: error: implicit declaration of function ‘g_socket_new_from_fd’
qemu-ga.c:450: error: nested extern declaration of ‘g_socket_new_from_fd’
qemu-ga.c:457: error: ‘GAState’ has no member named ‘listen_channel’
qemu-ga.c: In function ‘conn_channel_close’:
qemu-ga.c:467: error: ‘GAState’ has no member named ‘method’
qemu-ga.c:467: error: ‘GAState’ has no member named ‘method’
qemu-ga.c:467: error: ‘GAState’ has no member named ‘method’
qemu-ga.c:467: error: ‘GAState’ has no member named ‘method’
qemu-ga.c:467: error: ‘GAState’ has no member named ‘method’
qemu-ga.c:467: error: ‘GAState’ has no member named ‘method’
qemu-ga.c:467: error: ‘GAState’ has no member named ‘method’
qemu-ga.c:467: error: ‘GAState’ has no member named ‘method’
qemu-ga.c:467: error: ‘GAState’ has no member named ‘method’
qemu-ga.c:467: error: ‘GAState’ has no member named ‘method’
qemu-ga.c:467: error: ‘GAState’ has no member named ‘method’
qemu-ga.c:467: error: ‘GAState’ has no member named ‘method’
qemu-ga.c:467: error: ‘GAState’ has no member named ‘method’
qemu-ga.c:467: error: ‘GAState’ has no member named ‘method’
qemu-ga.c:467: error: ‘GAState’ has no member named ‘method’
qemu-ga.c:467: error: ‘GAState’ has no member named ‘method’
qemu-ga.c:467: error: ‘GAState’ has no member named ‘method’
qemu-ga.c:467: error: ‘GAState’ has no member named ‘method’
qemu-ga.c:467: error: ‘GAState’ has no member named ‘method’
qemu-ga.c:467: error: ‘GAState’ has no member named ‘method’
qemu-ga.c:468: error: ‘GAState’ has no member named ‘conn_channel’
qemu-ga.c:469: error: ‘GAState’ has no member named ‘conn_sock’
qemu-ga.c:470: error: ‘GAState’ has no member named ‘conn_sock’
qemu-ga.c:472: error: ‘GAState’ has no member named ‘method’
qemu-ga.c:472: error: ‘GAState’ has no member named ‘method’
qemu-ga.c:472: error: ‘GAState’ has no member named ‘method’
qemu-ga.c:472: error: ‘GAState’ has no member named ‘method’
qemu-ga.c:472: error: ‘GAState’ has no member named ‘method’
qemu-ga.c:472: error: ‘GAState’ has no member named ‘method’
qemu-ga.c:472: error: ‘GAState’ has no member named ‘method’
qemu-ga.c:472: error: ‘GAState’ has no member named ‘method’
qemu-ga.c:472: error: ‘GAState’ has no member named ‘method’
qemu-ga.c:472: error: ‘GAState’ has no member named ‘method’
qemu-ga.c:472: error: ‘GAState’ has no member named ‘method’
qemu-ga.c:472: error: ‘GAState’ has no member named ‘method’
qemu-ga.c:472: error: ‘GAState’ has no member named ‘method’
qemu-ga.c:472: error: ‘GAState’ has no member named ‘method’
qemu-ga.c:472: error: ‘GAState’ has no member named ‘method’
qemu-ga.c:472: error: ‘GAState’ has no member named ‘method’
qemu-ga.c:472: error: ‘GAState’ has no member named ‘method’
qemu-ga.c:472: error: ‘GAState’ has no member named ‘method’
qemu-ga.c:472: error: ‘GAState’ has no member named ‘method’
qemu-ga.c:472: error: ‘GAState’ has no member named ‘method’
qemu-ga.c:480: error: ‘GAState’ has no member named ‘conn_channel’
qemu-ga.c:481: error: ‘GAState’ has no member named ‘conn_channel’
qemu-ga.c: In function ‘init_guest_agent’:
qemu-ga.c:491: error: ‘GAState’ has no member named ‘method’
qemu-ga.c:493: error: ‘GAState’ has no member named ‘method’
qemu-ga.c:496: error: ‘GAState’ has no member named ‘path’
qemu-ga.c:497: error: ‘GAState’ has no member named ‘method’
qemu-ga.c:497: error: ‘GAState’ has no member named ‘method’
qemu-ga.c:497: error: ‘GAState’ has no member named ‘method’
qemu-ga.c:497: error: ‘GAState’ has no member named ‘method’
qemu-ga.c:497: error: ‘GAState’ has no member named ‘method’
qemu-ga.c:497: error: ‘GAState’ has no member named ‘method’
qemu-ga.c:497: error: ‘GAState’ has no member named ‘method’
qemu-ga.c:497: error: ‘GAState’ has no member named ‘method’
qemu-ga.c:497: error: ‘GAState’ has no member named ‘method’
qemu-ga.c:497: error: ‘GAState’ has no member named ‘method’
qemu-ga.c:497: error: ‘GAState’ has no member named ‘method’
qemu-ga.c:497: error: ‘GAState’ has no member named ‘method’
qemu-ga.c:497: error: ‘GAState’ has no member named ‘method’
qemu-ga.c:497: error: ‘GAState’ has no member named ‘method’
qemu-ga.c:497: error: ‘GAState’ has no member named ‘method’
qemu-ga.c:497: error: ‘GAState’ has no member named ‘method’
qemu-ga.c:497: error: ‘GAState’ has no member named ‘method’
qemu-ga.c:497: error: ‘GAState’ has no member named ‘method’
qemu-ga.c:497: error: ‘GAState’ has no member named ‘method’
qemu-ga.c:497: error: ‘GAState’ has no member named ‘method’
qemu-ga.c:502: error: ‘GAState’ has no member named ‘path’
qemu-ga.c:505: error: ‘GAState’ has no member named ‘method’
qemu-ga.c:505: error: ‘GAState’ has no member named ‘method’
qemu-ga.c:505: error: ‘GAState’ has no member named ‘method’
qemu-ga.c:505: error: ‘GAState’ has no member named ‘method’
qemu-ga.c:505: error: ‘GAState’ has no member named ‘method’
qemu-ga.c:505: error: ‘GAState’ has no member named ‘method’
qemu-ga.c:505: error: ‘GAState’ has no member named ‘method’
qemu-ga.c:505: error: ‘GAState’ has no member named ‘method’
qemu-ga.c:505: error: ‘GAState’ has no member named ‘method’
qemu-ga.c:505: error: ‘GAState’ has no member named ‘method’
qemu-ga.c:505: error: ‘GAState’ has no member named ‘method’
qemu-ga.c:505: error: ‘GAState’ has no member named ‘method’
qemu-ga.c:505: error: ‘GAState’ has no member named ‘method’
qemu-ga.c:505: error: ‘GAState’ has no member named ‘method’
qemu-ga.c:505: error: ‘GAState’ has no member named ‘method’
qemu-ga.c:505: error: ‘GAState’ has no member named ‘method’
qemu-ga.c:505: error: ‘GAState’ has no member named ‘method’
qemu-ga.c:505: error: ‘GAState’ has no member named ‘method’
qemu-ga.c:505: error: ‘GAState’ has no member named ‘method’
qemu-ga.c:505: error: ‘GAState’ has no member named ‘method’
qemu-ga.c:506: error: ‘GAState’ has no member named ‘virtio’
qemu-ga.c:507: error: ‘GAState’ has no member named ‘path’
qemu-ga.c:517: error: ‘GAState’ has no member named ‘method’
qemu-ga.c:517: error: ‘GAState’ has no member named ‘method’
qemu-ga.c:517: error: ‘GAState’ has no member named ‘method’
qemu-ga.c:517: error: ‘GAState’ has no member named ‘method’
qemu-ga.c:517: error: ‘GAState’ has no member named ‘method’
qemu-ga.c:517: error: ‘GAState’ has no member named ‘method’
qemu-ga.c:517: error: ‘GAState’ has no member named ‘method’
qemu-ga.c:517: error: ‘GAState’ has no member named ‘method’
qemu-ga.c:517: error: ‘GAState’ has no member named ‘method’
qemu-ga.c:517: error: ‘GAState’ has no member named ‘method’
qemu-ga.c:517: error: ‘GAState’ has no member named ‘method’
qemu-ga.c:517: error: ‘GAState’ has no member named ‘method’
qemu-ga.c:517: error: ‘GAState’ has no member named ‘method’
qemu-ga.c:517: error: ‘GAState’ has no member named ‘method’
qemu-ga.c:517: error: ‘GAState’ has no member named ‘method’
qemu-ga.c:517: error: ‘GAState’ has no member named ‘method’
qemu-ga.c:517: error: ‘GAState’ has no member named ‘method’
qemu-ga.c:517: error: ‘GAState’ has no member named ‘method’
qemu-ga.c:517: error: ‘GAState’ has no member named ‘method’
qemu-ga.c:517: error: ‘GAState’ has no member named ‘method’
qemu-ga.c:518: error: ‘GAState’ has no member named ‘path’
qemu-ga.c:543: error: ‘GAState’ has no member named ‘method’
qemu-ga.c:543: error: ‘GAState’ has no member named ‘method’
qemu-ga.c:543: error: ‘GAState’ has no member named ‘method’
qemu-ga.c:543: error: ‘GAState’ has no member named ‘method’
qemu-ga.c:543: error: ‘GAState’ has no member named ‘method’
qemu-ga.c:543: error: ‘GAState’ has no member named ‘method’
qemu-ga.c:543: error: ‘GAState’ has no member named ‘method’
qemu-ga.c:543: error: ‘GAState’ has no member named ‘method’
qemu-ga.c:543: error: ‘GAState’ has no member named ‘method’
qemu-ga.c:543: error: ‘GAState’ has no member named ‘method’
qemu-ga.c:543: error: ‘GAState’ has no member named ‘method’
qemu-ga.c:543: error: ‘GAState’ has no member named ‘method’
qemu-ga.c:543: error: ‘GAState’ has no member named ‘method’
qemu-ga.c:543: error: ‘GAState’ has no member named ‘method’
qemu-ga.c:543: error: ‘GAState’ has no member named ‘method’
qemu-ga.c:543: error: ‘GAState’ has no member named ‘method’
qemu-ga.c:543: error: ‘GAState’ has no member named ‘method’
qemu-ga.c:543: error: ‘GAState’ has no member named ‘method’
qemu-ga.c:543: error: ‘GAState’ has no member named ‘method’
qemu-ga.c:543: error: ‘GAState’ has no member named ‘method’
qemu-ga.c:544: error: ‘GAState’ has no member named ‘path’
qemu-ga.c:544: error: ‘GAState’ has no member named ‘path’
qemu-ga.c:555: error: ‘GAState’ has no member named ‘method’
qemu-ga.c: In function ‘main’:
qemu-ga.c:631: error: ‘GAState’ has no member named ‘conn_channel’
qemu-ga.c:632: error: ‘GAState’ has no member named ‘path’
qemu-ga.c:633: error: ‘GAState’ has no member named ‘method’
qemu-ga.c:634: error: ‘GAState’ has no member named ‘log_file’
qemu-ga.c:635: error: ‘GAState’ has no member named ‘log_level’
qemu-ga.c:638: error: ‘GAState’ has no member named ‘logging_enabled’
qemu-ga.c:639: error: ‘GAState’ has no member named ‘command_state’
qemu-ga.c:640: error: ‘GAState’ has no member named ‘command_state’
qemu-ga.c:641: error: ‘GAState’ has no member named ‘command_state’
qemu-ga.c:650: error: ‘struct GAState’ has no member named ‘command_state’
make: *** [qemu-ga.o] Error 1
... but it also breaks here:
qga/guest-agent-commands.c: In function ‘qmp_guest_fsfreeze_freeze’:
qga/guest-agent-commands.c:443: error: ‘FIFREEZE’ undeclared (first use in this
function)
qga/guest-agent-commands.c:443: error: (Each undeclared identifier is reported
only once
qga/guest-agent-commands.c:443: error: for each function it appears in.)
qga/guest-agent-commands.c: In function ‘qmp_guest_fsfreeze_thaw’:
qga/guest-agent-commands.c:481: error: ‘FITHAW’ undeclared (first use in this
function)
which I guess is fixed with Anthony's patch? Not sure. Either way, please make
sure to add proper configure checks before relying on obscure functionality.
GSocket is part of gio and should've been pulled in via the gio
pkg-config test. I'll poke around on a SLES11 guest and try to figure
out what's going on here.
Anthony's patch fixed a build issue when trying to use fsfreeze on a
non-linux host, so it wouldn't fix the issue you mentioned. I'll look
into that as well.
Alex