Messages in this thread |  | | Date | Tue, 28 May 1996 21:52:35 -0400 | From | "Theodore Y. Ts'o" <> | Subject | Re: /dev/random never refills, 1.99.7 |
| |
From: Paul Gortmaker <gpg109@rsphy6.anu.edu.au> Date: Mon, 27 May 1996 12:57:30 +1000 (EST)
No drivers use add_irq_randomness() at present, as I said earlier (below)
Also note that the floppy and IDE driver *look like* they use the add_irq_randomness() because they use a SA_SAMPLE_RANDOM flag with the call to request_irq(). But they also use SA_INTERRUPT, which means using do_fast_IRQ() which correctly avoids calling add_irq_randomness(), as it is only called inside do_IRQ(). In other words, using SA_INTERRUPT|SA_SAMPLE_RANDOM is functionally equivalent to SA_INTERRUPT. So to this point in time, it appears that *nobody* has used add_irq_randomness() yet.
So you will have to put your keyboard in the bottom of your pet hampster's cage overnight, or run updatedb at 2:30am to create some disk activity.
Actually, not true. The floppy and IDE drive shouldn't be setting SA_SAMPLE_RANDOM, since they should be using randomness collected in include/linux/blk.h, in the end_request() routine. This driver isn't being used by the SCSI device drivers, though.
The problem that TaRDiS was having was probably that he's using SCSI disk drives, and SCSI doesn't use the generic end_request() routine. I have a very simple patch to fix this, and that will hopefully be going into the next pre-2.0 kernel, along with some additional random driver speedups and performance fixes.
- Ted
|  |