|
From: | Gerd Hoffmann |
Subject: | [Qemu-devel] Re: [PATCH 0/8] (v2) chardev, virtio-console: flow control, error handling, fixes |
Date: | Mon, 12 Apr 2010 09:51:51 +0200 |
User-agent: | Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.9.1.9) Gecko/20100330 Fedora/3.0.4-1.fc12 Thunderbird/3.0.4 |
On 04/08/10 00:58, Paul Brook wrote:
Hello, This patchset introduces flow control to virtio-console and chardev-based virtio serial ports. This series is based on the previous series I sent on Mar 31st (00/17: v4: virtio-serial fixes, new abi for port discovery) The qemu chardevs can now return -EAGAIN when a non-blocking remote isn't ready to accept more data. Comments?This is a major change in semantics. Are you sure all users handle this correctly? My guess is that most of the devices don't.
I don't expect trouble here. EAGAIN is returned only for file handles in non-blocking mode. I doubt existing users use non-blocking I/O as this makes the current unix_write() code go busy-loop in case the outgoing pipe is full.
EAGAIN isn't really a useful response unless you have some way of notifying the device that it can send more data.
This is a valid point though. cheers, Gerd
[Prev in Thread] | Current Thread | [Next in Thread] |