[Libguestfs] [PATCH] Add command trace functionality
Richard W.M. Jones
rjones at redhat.com
Thu Sep 10 15:03:35 UTC 2009
On Thu, Sep 10, 2009 at 03:02:25PM +0100, Matthew Booth wrote:
>> + pr " printf (\"\\\"\");\n";
>
> There's a missing leading space in the above line.
Well spotted - fixed in my local copy.
>> + pr " for (i = 0; %s[i]; ++i) {\n" n;
>> + pr " if (i> 0) putchar (' ');\n";
>> + pr " printf (\"%%s\", %s[i]);\n" n;
>> + pr " }\n";
>> + pr " printf (\"\\\"\");\n";
>
> As discussed on the list, this results in commands which can't be
> executed in guestfish because argument groupings are lost when arguments
> contain spaces. While this is a limitation of guestfish rather than this
> patch, a fix in guestfish will require a modification to this patch. Can
> we hold off on this until guestfish is fixed?
Agreed - I'll wait to see your patch.
> It spits out internal state changes. Look at this output:
> add_drive "/var/lib/virt-snapshot/images/RHEL39FV32-hda-1252577522.qcow2"
> config "-drive"
> "file=/var/lib/virt-snapshot/images/RHEL39FV32-hda-1252577522.qcow2,cache=off,if=ide"
> add_cdrom "/tmp/4BQ6oiKKAJ.iso"
> config "-cdrom" "/tmp/4BQ6oiKKAJ.iso"
> set_selinux true
> launch
> wait_ready
> list_partitions
> is_ready
> set_busy
> end_busy
Yeah, I'm aware of this, and I suggest we fix it with the proposed &
much delayed rewrite of the main loop code.
> We also discussed this on the list. I don't think this is a problem with
> this patch as such, but that state transition functions are part of the
> external API. These need to be removed from *all* bindings, including
> guestfish.
Yup. The state and these APIs aren't necessary if we get rid of the
main loop and just use synchronous read/write.
Rich.
--
Richard Jones, Emerging Technologies, Red Hat http://et.redhat.com/~rjones
virt-top is 'top' for virtual machines. Tiny program with many
powerful monitoring features, net stats, disk stats, logging, etc.
http://et.redhat.com/~rjones/virt-top
More information about the Libguestfs
mailing list