Re: /dev/random blocks forever on 2.2.12 and 2.2.16

From: Oscar Roozen (jor+lkml@xs4all.nl)
Date: Tue Aug 08 2000 - 08:48:07 EST


On Tue, Aug 08, 2000 at 01:35:41PM +0100, Russell King wrote:
> /dev/random is a secure random-number generator. It uses external stimulae
> to produce these random numbers, and keeps an track of the entropy of the
> random pool. Once it detects that there's not enough randomness in the pool
> to guarantee that these numbers are secure, reading from /dev/random will
> block. This is its design.

This is what I understand.

> There are other interfaces in the random number stuff. f.e. keyboard
> scancodes/busmouse stuff are also used.

Okay, but this machine has no keyboard and no mouse. Only a cool 19" rack.
So I was wondering why the network and disk events did not add to the
random pool, as it should.

> Any interrupt with the
> SA_SAMPLE_RANDOM flag is also used.

Ah! So none of the interrupts 5, 10 and 11 (for cpqfc, ida0 and eth0)
have this flag set, where they should have setted it? Or should not?

>From signal.h:
#define SA_SAMPLE_RANDOM SA_RESTART

I'm getting scared now... This means to me that setting SA_RESTART also
sets SAMPLE_RANDOM and vice versa.

>In 2.4.0, I also see that randomness
> is added at the end of processing a request (__scsi_end_request in
> scsi_lib.c).

Would it be possible and desirable to backport this to 2.2.x?

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.rutgers.edu
Please read the FAQ at http://www.tux.org/lkml/



This archive was generated by hypermail 2b29 : Tue Aug 15 2000 - 21:00:15 EST