[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH v3 3/3] python/qemu/machine: use socketpair() for QMP by defa
From: |
Daniel P . Berrangé |
Subject: |
Re: [PATCH v3 3/3] python/qemu/machine: use socketpair() for QMP by default |
Date: |
Mon, 20 Mar 2023 10:56:10 +0000 |
User-agent: |
Mutt/2.2.9 (2022-11-12) |
On Fri, Mar 17, 2023 at 10:36:37PM +0300, Vladimir Sementsov-Ogievskiy wrote:
> Hi!
>
> By my investigation, this commit (bd4c0ef409140bd1be393407c04005ac077d4574)
> breaks long qmp output again.
>
> ./test.py 1000 /tmp/sock
>
> - works, but if use default behavior (socketpair) we get:
>
> $ ./test.py 1000
> Traceback (most recent call last):
snip
> File "/usr/lib/python3.10/asyncio/streams.py", line 534, in readline
> ValueError: Separator is not found, and chunk exceed the limit
After going off in the weeds I realized this message is the key bit. We
failed to pass the raised recv limit to asyncio when using a pre-opened
socket. Since the QMP reply was greater than 64kb asyncio raised an
exception. This was a pre-existing latent bug, exposed with the patch
to enable use of socketpair(). I've CC'd you on a patch to fix this.
With regards,
Daniel
--
|: https://berrange.com -o- https://www.flickr.com/photos/dberrange :|
|: https://libvirt.org -o- https://fstop138.berrange.com :|
|: https://entangle-photo.org -o- https://www.instagram.com/dberrange :|