summaryrefslogtreecommitdiff
path: root/promisc.c
diff options
context:
space:
mode:
Diffstat (limited to 'promisc.c')
0 files changed, 0 insertions, 0 deletions
f091d0aeb863c649efd7a9112'>2ffd7732681f0cd243ba0e2cb934cc37f59bd2ca parente192be9d9a30555aae2ca1dc3aad37cba484cd4a (diff)
random: make /dev/urandom scalable for silly userspace programs
On a system with a 4 socket (NUMA) system where a large number of application threads were all trying to read from /dev/urandom, this can result in the system spending 80% of its time contending on the global urandom spinlock. The application should have used its own PRNG, but let's try to help it from running, lemming-like, straight over the locking cliff. Reported-by: Andi Kleen <ak@linux.intel.com> Signed-off-by: Theodore Ts'o <tytso@mit.edu>
Diffstat
-rw-r--r--drivers/char/random.c62
1 files changed, 58 insertions, 4 deletions
diff --git a/drivers/char/random.c b/drivers/char/random.c