From: Michal Privoznik <mprivozn@redhat.com>
To: QEMU Developers <qemu-devel@nongnu.org>
Cc: Michael Roth <mdroth@linux.vnet.ibm.com>
Subject: [Qemu-devel] Guest-sync-delimited and sentinel issue
Date: Fri, 16 Mar 2012 13:47:42 +0100 [thread overview]
Message-ID: <4F63366E.8090902@redhat.com> (raw)
Hi guys,
I was just implementing support for guest-sync-delimited into libvirt. My intent is to issue this command prior any other command to determine if GA is available or not. The big advantage is - it doesn't change the state of the guest so from libvirt POV it's harmless. The other big advantage is this sentinel byte 0xFF which is supposed to flush all unprocessed (and possibly stale) data from previous unsuccessful tries.
As written in documentation, this command will output sentinel byte to the guest agent socket. This works perfectly. However, it is advised in the very same documentation to prepend this command with the sentinel as well allowing GA parser flush. But this doesn't work for me completely. All I can get is:
$ echo -e "\xFF{\"execute\":\"guest-sync-delimited\", \"arguments\":{\"id\":1234}}" | nc -U /tmp/ga.sock | hexdump -C
nc: using stream socket
00000000 7b 22 65 72 72 6f 72 22 3a 20 7b 22 63 6c 61 73 |{"error": {"clas|
00000010 73 22 3a 20 22 4a 53 4f 4e 50 61 72 73 69 6e 67 |s": "JSONParsing|
00000020 22 2c 20 22 64 61 74 61 22 3a 20 7b 7d 7d 7d 0a |", "data": {}}}.|
00000030 ff 7b 22 72 65 74 75 72 6e 22 3a 20 31 32 33 34 |.{"return": 1234|
00000040 7d 0a |}.|
00000042
The problem is - GA has difficulties with parsing sentinel, although the reply is correct, indeed.
Therefore my question is - should I just drop passing sentinel to GA? And even if this is fixed, How should I deal with older releases which have this bug?
Regards,
Michal
next reply other threads:[~2012-03-16 12:47 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-03-16 12:47 Michal Privoznik [this message]
2012-03-16 14:49 ` [Qemu-devel] Guest-sync-delimited and sentinel issue Michael Roth
2012-03-16 16:04 ` Michal Privoznik
2012-03-16 17:26 ` Michael Roth
2012-03-16 15:07 ` Eric Blake
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=4F63366E.8090902@redhat.com \
--to=mprivozn@redhat.com \
--cc=mdroth@linux.vnet.ibm.com \
--cc=qemu-devel@nongnu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).