qemu-stable
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-stable] [Qemu-devel] [PATCH 1/1] rng random backend: check for


From: Andreas Färber
Subject: Re: [Qemu-stable] [Qemu-devel] [PATCH 1/1] rng random backend: check for -EAGAIN errors on read
Date: Tue, 16 Apr 2013 15:51:30 +0200
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:17.0) Gecko/20130329 Thunderbird/17.0.5

Am 16.04.2013 12:28, schrieb Amit Shah:
> 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>

Doesn't this apply to stable, too, then?

Regards,
Andreas

> ---
>  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);

-- 
SUSE LINUX Products GmbH, Maxfeldstr. 5, 90409 Nürnberg, Germany
GF: Jeff Hawn, Jennifer Guild, Felix Imendörffer; HRB 16746 AG Nürnberg



reply via email to

[Prev in Thread] Current Thread [Next in Thread]