qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] [QGA] Bug of qga?


From: Sameeh Jubran
Subject: Re: [Qemu-devel] [QGA] Bug of qga?
Date: Tue, 29 Aug 2017 12:04:13 +0300

Hi Sam,

Thanks for reporting this, in order to debug this efficiently I need you to
provide me with more info, if you can provide it that would be great.
Can you reproduce the issue with ncat? You can use ncat to connect to the
socket by running the following command:

nc -U /tmp/qga.sock

Which OS are you running? Which qemu-ga version are you running? can you
reproduce with upstream qemu-ga?

On Tue, Aug 29, 2017 at 9:19 AM, Sam <address@hidden> wrote:

> So how to fix this bug? And where should I to report bug?
>
> 2017-08-29 13:52 GMT+08:00 Sam <address@hidden>:
>
> > I could repeat this several times, I think it's mis-order of qmp in qga
> > socket.
> >
> > 2017-08-25 11:09 GMT+08:00 Sam <address@hidden>:
> >
> >> Also I found:
> >>
> >> when I use `socat` to take a qga socket, then I use `socat` to
> >> communicate it will got error.
> >> But also SOMETIMES, I will not got error and will communicate OK.
> >>
> >> If one user take qga socket, another user should got error, is it? But
> >> why sometimes, the communicate is OK?
> >>
> >> 2017-08-25 10:11 GMT+08:00 Sam <address@hidden>:
> >>
> >>> Hi all,
> >>>
> >>> I'm using qga to send `route -n` and `ping` command to guest. But I
> >>> found SOMETIMES, the second `ping` command's result is the same as
> `route
> >>> -n` command.
> >>>
> >>> So I guess is there some cache mechanism of qga command result? So when
> >>> I send the second command, and receive from qga socket, I receive the
> >>> result of first command.
> >>>
> >>> Or is this bug happened because of I use async mechanism of python code
> >>> to operate qga socket?
> >>>
> >>> This is the python code I use to operate on this qga socket:
> >>>
> >>> try:
> >>>>         sock=socket(AF_UNIX, SOCK_STREAM)
> >>>>         sock.settimeout(20)
> >>>>         sock.connect(vm_qga_sockpath)
> >>>>         sock.send(cmd)
> >>>>         while True:
> >>>>             res = sock.recv(1024)
> >>>>             if len(res):
> >>>>                 break
> >>>>     except Exception as e:
> >>>>         res = -1
> >>>>     finally:
> >>>>         sock.settimeout(None)
> >>>>         sock.close()
> >>>
> >>>
> >>
> >
>



-- 
Respectfully,
*Sameeh Jubran*
*Linkedin <https://il.linkedin.com/pub/sameeh-jubran/87/747/a8a>*
*Software Engineer @ Daynix <http://www.daynix.com>.*


reply via email to

[Prev in Thread] Current Thread [Next in Thread]