[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH 1/1] rng random backend: check for -EAGAIN errors on
From: |
Amit Shah |
Subject: |
[Qemu-devel] [PATCH 1/1] rng random backend: check for -EAGAIN errors on read |
Date: |
Tue, 16 Apr 2013 15:58:16 +0530 |
Not handling EAGAIN triggers the assert
qemu/backends/rng-random.c:44:entropy_available: assertion failed: (len != -1)
Aborted (core dumped)
This happens when starting a guest with '-device virtio-rng-pci',
issuing a 'cat /dev/hwrng' in the guest, while also doing 'cat
/dev/random' on the host.
Reported-by: yunpingzheng <address@hidden>
Signed-off-by: Amit Shah <address@hidden>
---
backends/rng-random.c | 3 +++
1 file changed, 3 insertions(+)
diff --git a/backends/rng-random.c b/backends/rng-random.c
index d5761f2..830360c 100644
--- a/backends/rng-random.c
+++ b/backends/rng-random.c
@@ -41,6 +41,9 @@ static void entropy_available(void *opaque)
ssize_t len;
len = read(s->fd, buffer, s->size);
+ if (len < 0 && errno == EAGAIN) {
+ return;
+ }
g_assert(len != -1);
s->receive_func(s->opaque, buffer, len);
--
1.8.1.4
- [Qemu-devel] [PATCH 1/1] rng random backend: check for -EAGAIN errors on read,
Amit Shah <=