This repository has been archived on 2026-03-14. You can view files and clone it, but cannot push or open issues or pull requests.
Files
ubports_kernel_google_msm/include/linux
Theodore Ts'o a1cca5558b random: make 'add_interrupt_randomness()' do something sane
commit 775f4b297b780601e61787b766f306ed3e1d23eb upstream.

We've been moving away from add_interrupt_randomness() for various
reasons: it's too expensive to do on every interrupt, and flooding the
CPU with interrupts could theoretically cause bogus floods of entropy
from a somewhat externally controllable source.

This solves both problems by limiting the actual randomness addition
to just once a second or after 64 interrupts, whicever comes first.
During that time, the interrupt cycle data is buffered up in a per-cpu
pool.  Also, we make sure the the nonblocking pool used by urandom is
initialized before we start feeding the normal input pool.  This
assures that /dev/urandom is returning unpredictable data as soon as
possible.

(Based on an original patch by Linus, but significantly modified by
tytso.)

Tested-by: Eric Wustrow <ewust@umich.edu>
Reported-by: Eric Wustrow <ewust@umich.edu>
Reported-by: Nadia Heninger <nadiah@cs.ucsd.edu>
Reported-by: Zakir Durumeric <zakir@umich.edu>
Reported-by: J. Alex Halderman <jhalderm@umich.edu>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Signed-off-by: Ed Tam <etam@google.com>
2013-09-09 14:43:59 -07:00
..
2013-03-15 17:05:25 -07:00
2012-04-23 14:23:32 +03:00
2012-04-27 11:03:38 -06:00
2012-04-09 13:57:51 -07:00
2013-02-27 18:13:43 -08:00
2013-02-25 11:29:27 -08:00
2012-04-09 13:57:52 -07:00
2012-03-29 15:38:31 +10:30
2013-02-25 11:29:22 -08:00
2013-02-20 02:50:23 -08:00
2012-05-22 14:01:06 -07:00
2013-02-20 01:31:50 -08:00
2012-04-30 15:30:18 -07:00
2013-03-04 12:44:09 -08:00
2012-04-12 12:57:08 +02:00
2013-03-15 17:08:42 -07:00
2012-04-09 13:53:16 -07:00
2012-04-27 10:46:45 +08:00
2012-04-09 13:57:58 -07:00
2013-03-15 17:08:42 -07:00
2012-03-26 21:47:19 +02:00
2012-03-26 21:47:19 +02:00
2012-03-26 21:47:19 +02:00
2012-03-26 21:47:19 +02:00
2012-03-26 21:47:19 +02:00
2012-03-26 21:47:19 +02:00
2013-09-04 12:43:32 -07:00
2012-03-27 22:45:26 -04:00
2013-02-08 15:04:34 -08:00
2013-02-27 18:13:08 -08:00
2013-09-06 16:15:39 -07:00
2013-03-15 17:08:42 -07:00
2013-02-25 11:29:50 -08:00
2013-03-15 17:24:49 -07:00
2013-06-26 16:28:49 -07:00
2013-02-25 11:29:28 -08:00
2013-02-27 18:16:43 -08:00
2012-03-28 18:30:03 +01:00
2012-05-01 09:40:19 -04:00
2012-05-16 13:27:23 -07:00
2013-02-25 11:29:18 -08:00
2012-04-10 22:39:17 -06:00
2013-03-04 12:45:08 -08:00
2013-03-15 17:07:24 -07:00
2012-04-11 09:36:00 +01:00
2013-02-20 02:50:29 -08:00
2013-02-25 11:29:50 -08:00