All of lore.kernel.org
 help / color / mirror / Atom feed
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:03:52 +0200	[thread overview]
Message-ID: <519FE3C8.5050707@profihost.ag> (raw)
In-Reply-To: <519FDDAA.4010801@profihost.ag>



Mit freundlichen Grüßen
   Stefan Priebe
Bachelor of Science in Computer Science (BSCS)
Vorstand (CTO)

-------------------------------
Profihost AG
Am Mittelfelde 29
30519 Hannover
Deutschland

Tel.: +49 (511) 5151 8181     | Fax.: +49 (511) 5151 8282
URL: http://www.profihost.com | E-Mail: info@profihost.com

Sitz der Gesellschaft: Hannover, USt-IdNr. DE813460827
Registergericht: Amtsgericht Hannover, Register-Nr.: HRB 202350
Vorstand: Cristoph Bluhm, Sebastian Bluhm, Stefan Priebe
Aufsichtsrat: Prof. Dr. iur. Winfried Huck (Vorsitzender)

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

  reply	other threads:[~2013-05-24 22:03 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 [this message]
2013-05-24 22:04               ` Stefan Priebe
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=519FE3C8.5050707@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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.