I have a Beagleblone Black with an ARMv7 SoC. /proc/cpuinfo
says the hardware is Generic AM33XX
. It is running Debian and the 4.1.15-ti-rt-r40 kernel.
I run a lot of stress tests as part of my testing regime. The Beagleboard is suffering entropy depletion in /dev/random
. In blocking mode it takes minutes to read a handful of bytes. For example, it took 646 seconds to generate 10 bytes.
The machine has rng-tools
installed, which usually keeps /dev/random
in good working order. Or it does so on other Debian platforms like including my CubieTruck and Wandboard. I guess the entropy daemon has some trouble on this platform.
The question is kind of broad because I am not sure of the approach. I don't know if I should be using another package to ensure entropy, or if I need another program or driver. Or maybe something else.
My question is, how can I keep /dev/random
in good working order on the Beaglebone?
Dmesg shows a hardware random number generator:
[21.308396] omap_rng 48310000.rng: OMAP Random Number Generator ver. 20
And the kernel was configured to provide the driver as a module:
$ cat /boot/config-4.1.15-ti-rt-r40 | grep HW_RANDOM_OMAP
CONFIG_HW_RANDOM_OMAP=m
$ uname -a
Linux beaglebone 4.1.15-ti-rt-r40 #1 SMP PREEMPT RT Thu Jan 7 23:32:08 UTC 2016armv7l GNU/Linux
$ cat /proc/cpuinfo
processor : 0
model name : ARMv7 Processor rev 2 (v7l)
BogoMIPS : 996.14
Features : half thumb fastmult vfp edsp thumbee neon vfpv3 tls vfpd32
CPU implementer : 0x41
CPU architecture: 7
CPU variant : 0x3
CPU part : 0xc08
CPU revision : 2
Hardware : Generic AM33XX (Flattened Device Tree)
Revision : 0000
Serial : 0000000000000000
rngd
running?