[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] monitor: enable OOB by default
From: |
Daniel P . Berrangé |
Subject: |
Re: [Qemu-devel] monitor: enable OOB by default |
Date: |
Wed, 27 Jun 2018 14:28:53 +0100 |
User-agent: |
Mutt/1.10.0 (2018-05-17) |
On Wed, Jun 27, 2018 at 03:13:57PM +0200, Markus Armbruster wrote:
> Monitor behavior changes even when the client rejects capability "oob".
>
> Traditionally, the monitor reads, executes and responds to one command
> after the other. If the client sends in-band commands faster than the
> server can execute them, the kernel will eventually refuse to buffer
> more, and sending blocks or fails with EAGAIN.
>
> To make OOB possible, we need to read and queue commands as we receive
> them. If the client sends in-band commands faster than the server can
> execute them, the server will eventually drop commands to limit the
> queue length. The sever sends event COMMAND_DROPPED then.
>
> However, we get the new behavior even when the client rejects capability
> "oob". We get the traditional behavior only when the server doesn't
> offer "oob".
>
> Is this what we want?
IMHO the key benefit of allowing the client to reject the capability
is to enable backwards compat support. So this behaviour feels wrong.
Rejecting OOB should have same semantics as previous QEMU's without
OOB available, otherwise we now have 3 distinct ways the monitor
operates (no OOB, OOB rejected, OOB accepted). This can only ever
lead to more bugs due to lack of testing of no OOB vs OOB rejected
scenarios.
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 :|
- Re: [Qemu-devel] monitor: enable OOB by default, (continued)
- Re: [Qemu-devel] monitor: enable OOB by default, Daniel P . Berrangé, 2018/06/27
- Re: [Qemu-devel] monitor: enable OOB by default, Markus Armbruster, 2018/06/27
- Re: [Qemu-devel] monitor: enable OOB by default, Peter Xu, 2018/06/27
- Re: [Qemu-devel] monitor: enable OOB by default, Eric Blake, 2018/06/27
- Re: [Qemu-devel] monitor: enable OOB by default, Markus Armbruster, 2018/06/28
- Re: [Qemu-devel] monitor: enable OOB by default, Peter Xu, 2018/06/29
- Re: [Qemu-devel] monitor: enable OOB by default, Markus Armbruster, 2018/06/28
- Re: [Qemu-devel] monitor: enable OOB by default, Eric Blake, 2018/06/28
- Re: [Qemu-devel] monitor: enable OOB by default, Peter Xu, 2018/06/29
- Re: [Qemu-devel] monitor: enable OOB by default, Markus Armbruster, 2018/06/27
- Re: [Qemu-devel] monitor: enable OOB by default,
Daniel P . Berrangé <=
- Re: [Qemu-devel] monitor: enable OOB by default, Markus Armbruster, 2018/06/28
- Re: [Qemu-devel] monitor: enable OOB by default, Peter Xu, 2018/06/27
- Re: [Qemu-devel] monitor: enable OOB by default, Markus Armbruster, 2018/06/28
- Re: [Qemu-devel] monitor: enable OOB by default, Peter Xu, 2018/06/29
Re: [Qemu-devel] monitor: enable OOB by default, Markus Armbruster, 2018/06/27
Re: [Qemu-devel] monitor: enable OOB by default, Peter Xu, 2018/06/27