On 19.11.2014 23:58, John Ferlan wrote:
>
>
> On 11/17/2014 06:26 PM, Tomoki Sekiyama wrote:
>> Hi,
>>
>> This is v2 of patchset to add virDomainGetFSInfo API.
>>
>> * changes in v1->v2:
>> -[all] removed redundant NULL element at the last of returned info array
>> -[3/5] make error messages in qemu_agent.c consistent with other commands
>> -[4/5] added a test case for 2 items in info->devAliases
>> -[5/5] added a pod document for virsh domfsinfo command
>> (v1:
http://www.redhat.com/archives/libvir-list/2014-October/msg00001.html )
>>
>> * summary
>> This series implements a new virDomainGetFSInfo API, that returns a list of
>> mounted filesystems information in the guest, collected via the guest agent.
>>
>> The returned info contains mountpoints and disk device alias named in
>> libvirt, so we can know which mountpoints should be frozen by
>> virDomainFSFreeze to take snapshots of a part of disks.
>>
>> ---
>> Tomoki Sekiyama (5):
>> Implement public API for virDomainGetFSInfo
>> remote: Implement the remote protocol for virDomainGetFSInfo
>> qemu: Implement the qemu driver for virDomainGetFSInfo
>> qemu: add test for qemuAgentGetFSInfo
>> virsh: expose virDomainGetFSInfo
>>
>>
>> daemon/remote.c | 117 ++++++++++++++++++++
>> include/libvirt/libvirt-domain.h | 21 ++++
>> src/conf/domain_conf.c | 71 ++++++++++++
>> src/conf/domain_conf.h | 6 +
>> src/driver-hypervisor.h | 6 +
>> src/libvirt.c | 66 +++++++++++
>> src/libvirt_private.syms | 1
>> src/libvirt_public.syms | 6 +
>> src/qemu/qemu_agent.c | 178 ++++++++++++++++++++++++++++++
>> src/qemu/qemu_agent.h | 2
>> src/qemu/qemu_driver.c | 48 ++++++++
>> src/remote/remote_driver.c | 92 ++++++++++++++++
>> src/remote/remote_protocol.x | 32 +++++
>> src/remote_protocol-structs | 21 ++++
>> src/rpc/gendispatch.pl | 1
>> tests/Makefile.am | 1
>> tests/qemuagentdata/qemuagent-fsinfo.xml | 39 +++++++
>> tests/qemuagenttest.c | 143 ++++++++++++++++++++++++
>> tools/virsh-domain.c | 74 ++++++++++++
>> tools/virsh.pod | 9 ++
>> 20 files changed, 933 insertions(+), 1 deletion(-)
>> create mode 100644 tests/qemuagentdata/qemuagent-fsinfo.xml
>>
>> --
>>
>> Tomoki Sekiyama
>>
>
>
> I reviewed the 'libvirt' specific changes - had a few comments and have
> made changes to my review branch as specified. As long as you're OK
> with those changes I will get these pushed.
>
> I'm also hoping someone else (eblake?) can look at the remote_protocol.x
> changes to ensure they encompass everything they are supposed to. Also
> that the usage of QEMU_JOB_QUERY not _MODIFY for the GetFSInfo seems
> more appropriate and is in line with the various remote_protocol.x
> settings (@acl/@generate stuff settings).
@generate is correct, since both, client and server implementations are
provided.
@acl looks consistent to the rest. Correct, for querying domain info you
need to have read permission and that's it.
And yes, the job should be _QUERY since we are querying info, not
modifying domain in any way.
However, for some reason I see this build error after 2/5:
make[3]: Entering directory
'/home/zippy/work/libvirt/libvirt.git/tools/wireshark/src'
CC libvirt_la-packet-libvirt.lo
In file included from libvirt/protocol.h:5:0,
from packet-libvirt.h:112,
from packet-libvirt.c:36:
./libvirt/remote.h: In function 'dissect_xdr_remote_typed_param_value':
./libvirt/remote.h:470:5: error: unknown type name 'remote_nonnull_string'
remote_nonnull_string type = 0;
^
./libvirt/remote.h:473:5: warning: implicit declaration of function
'xdr_remote_nonnull_string' [-Wimplicit-function-declaration]
if (!xdr_remote_nonnull_string(xdrs, &type))
^
Makefile:1934: recipe for target 'libvirt_la-packet-libvirt.lo' failed
make[3]: *** [libvirt_la-packet-libvirt.lo] Error 1
Strange - I don't see this. My ./tools/wireshark/src/libvirt/remote.h
doesn't even have that line. Stranger still, my config.log (after make
clean; ./autogen.sh --system; make j4) has:
configure:69348: checking for wireshark
configure:69381: result: no
Could it be environmental? Could it be some config option? Perhaps
something installed? I have for wireshark on my f20 system:
wireshark.x86_64 1.10.10-1.fc20 @updates
John