On 02/02/2010 01:33 PM, Paolo Bonzini wrote:
No need to loop if less than a full buffer is read, the next
read would return EAGAIN.
Signed-off-by: Paolo Bonzini<pbonz...@redhat.com>
Applied all. Thanks.
Regards,
Anthony Liguori
---
vl.c | 4 ++--
1 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/vl.c b/vl.c
index 6f1e1ab..46c1118 100644
--- a/vl.c
+++ b/vl.c
@@ -3210,12 +3210,12 @@ static void qemu_event_read(void *opaque)
{
int fd = (unsigned long)opaque;
ssize_t len;
+ char buffer[512];
/* Drain the notify pipe */
do {
- char buffer[512];
len = read(fd, buffer, sizeof(buffer));
- } while ((len == -1&& errno == EINTR) || len> 0);
+ } while ((len == -1&& errno == EINTR) || len == sizeof(buffer));
}
static int qemu_event_init(void)