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



Reply via email to