From: Stefan Priebe <s.priebe@profihost.ag>
To: Luiz Capitulino <lcapitulino@redhat.com>
Cc: qemu-devel <qemu-devel@nongnu.org>,
Dietmar Maurer <dietmar@proxmox.com>,
"qemu-stable@nongnu.org" <qemu-stable@nongnu.org>
Subject: Re: [Qemu-devel] qmp commands get rejected
Date: Sat, 25 May 2013 00:04:50 +0200 [thread overview]
Message-ID: <519FE402.2060404@profihost.ag> (raw)
In-Reply-To: <519FDDAA.4010801@profihost.ag>
Am 24.05.2013 23:37, schrieb Stefan Priebe:
>> Am 24.05.2013 17:21, schrieb Luiz Capitulino:
>>> On Fri, 24 May 2013 16:36:26 +0200
>>> Stefan Priebe - Profihost AG <s.priebe@profihost.ag> wrote:
>>>
>>>> Am 24.05.2013 um 16:02 schrieb Luiz Capitulino
>>>> <lcapitulino@redhat.com>:
>>>>
>>>>> On Fri, 24 May 2013 15:57:59 +0200
>>>>> Stefan Priebe - Profihost AG <s.priebe@profihost.ag> wrote:
>>>>>
>>>>>> Am 24.05.2013 um 15:23 schrieb Luiz Capitulino
>>>>>> <lcapitulino@redhat.com>:
>>>>>>
>>>>>>> On Fri, 24 May 2013 07:50:33 +0200
>>>>>>> Stefan Priebe <s.priebe@profihost.ag> wrote:
>>>>>>>
>>>>>>>> Hello list,
>>>>>>>>
>>>>>>>> since upgrading from qemu 1.4.1 to 1.5.0 i've problems with qmp
>>>>>>>> commands.
>>>>>>>>
>>>>>>>> With Qemu 1.5 i've the following socket communication:
>>>>>>>>
>>>>>>>> '{"execute":"qmp_capabilities","id":"12125:1","arguments":{}}'
>>>>>>>>
>>>>>>>> '{"return": {}, "id": "12125:1"}'
>>>>>>>>
>>>>>>>> '{"execute":"qom-set","id":"12125:2","arguments":{"value":2,"path":"machine/peripheral/balloon0","property":"guest-stats-polling-interval"}}'
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>> '{"QMP": {"version": {"qemu": {"micro": 0, "minor": 5, "major": 1},
>>>>>>>> "package": ""}, "capabilities": []}}'
>>>>>>>>
>>>>>>>> '{"id": "12125:2", "error": {"class": "CommandNotFound", "desc":
>>>>>>>> "The
>>>>>>>> command qom-set has not been found"}}'
>>>>>>>>
>>>>>>>>
>>>>>>>> It seems that the command mode (qmp_capabilities) gets resets by
>>>>>>>> the
>>>>>>>> welcome banner?
>>>>>>>
>>>>>>> It looks like you got disconnected before qom-set was issued.
>>>>>>
>>>>>> No its the same socket connection. No disconnect had happened.
>>>>>>
>>>>>>>
>>>>>>> Can you share more details on how those commands are being issued?
>>>>>>
>>>>>> They're send through socket with a perl script. What do you need?
>>>>>
>>>>> That perl script maybe? I can't reproduce the problem.
>>>>
>>>> I would try to create a small example script.
>>>
>>> I use qmp-shell and other little scripts very often.
>>>
>>>> Am this be due to the fact that I don't wait for the welcome banner
>>>> right now?
>>>
>>> If you're not reading from the socket, then you'll get the banner back
>>> when
>>> you read your first response. But qom-set shouldn't fail because of
>>> that.
>
> I can workaround it by adding this patch:
> diff --git a/monitor.c b/monitor.c
> index 62aaebe..9997520 100644
> --- a/monitor.c
> +++ b/monitor.c
> @@ -4239,7 +4239,8 @@ static int monitor_can_read(void *opaque)
> static int invalid_qmp_mode(const Monitor *mon, const char *cmd_name)
> {
> int is_cap = compare_cmd(cmd_name, "qmp_capabilities");
> - return (qmp_cmd_mode(mon) ? is_cap : !is_cap);
> +// return (qmp_cmd_mode(mon) ? is_cap : !is_cap);
> + return ((is_cap > 0) ? 0 : (qmp_cmd_mode(mon) ? is_cap : !is_cap));
> }
>
> /*
It fixes it for the moment... but not in general. Still seeing failing
commands...
Stefan
next prev parent reply other threads:[~2013-05-24 22:05 UTC|newest]
Thread overview: 18+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-05-24 5:50 [Qemu-devel] qmp commands get rejected Stefan Priebe
2013-05-24 13:23 ` Luiz Capitulino
2013-05-24 13:57 ` Stefan Priebe - Profihost AG
2013-05-24 14:02 ` Luiz Capitulino
2013-05-24 14:36 ` Stefan Priebe - Profihost AG
2013-05-24 15:21 ` Luiz Capitulino
2013-05-24 20:12 ` Stefan Priebe
2013-05-24 21:37 ` Stefan Priebe
2013-05-24 22:03 ` Stefan Priebe
2013-05-24 22:04 ` Stefan Priebe [this message]
2013-05-24 22:09 ` [Qemu-devel] [Qemu-stable] " mdroth
2013-05-24 22:12 ` Stefan Priebe
2013-05-24 22:32 ` mdroth
2013-05-25 11:09 ` Stefan Priebe
2013-05-26 1:23 ` mdroth
2013-05-26 15:13 ` Stefan Priebe
2013-05-26 15:36 ` mdroth
2013-05-26 20:52 ` Stefan Priebe
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=519FE402.2060404@profihost.ag \
--to=s.priebe@profihost.ag \
--cc=dietmar@proxmox.com \
--cc=lcapitulino@redhat.com \
--cc=qemu-devel@nongnu.org \
--cc=qemu-stable@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).