linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 0/3] RDSEED support for the Linux kernel
@ 2014-03-04 22:40 H. Peter Anvin
  2014-03-04 22:40 ` [PATCH 1/3] x86, random: Enable the RDSEED instruction H. Peter Anvin
                   ` (2 more replies)
  0 siblings, 3 replies; 7+ messages in thread
From: H. Peter Anvin @ 2014-03-04 22:40 UTC (permalink / raw)
  To: Linus Torvalds, Ted Ts'o, H. Peter Anvin, Ingo Molnar,
	Thomas Gleixner
  Cc: Linux Kernel Mailing List, H. Peter Anvin

From: "H. Peter Anvin" <hpa@linux.intel.com>

Upcoming Intel silicon adds a new RDSEED instruction.  Whereas RDRAND
returns output from a PRNG, the RDSEED instruction returns fully
conditioned entropy that is suitable for use as seeds to a PRNG.

This patchset adds support for RDSEED in the Linux kernel in three
places:

1. During bootup, use RDSEED to initialize the entropy pool if
   available (we already use RDRAND for this).  We don't add any
   credit at this point, but it will give much better starting point.

2. In the slow path to add_interrupt_randomness, executed once per
   second, we take a single RDSEED sample and mix it into the entropy
   pool, crediting it at 50% of its rated entropy.  This was suggested
   by Linus.

3. If we are about to block on /dev/random due to lack of entropy,
   attempt an "emergency pool refill" using RDSEED.

Comments are, of course, appreciated.

	-hpa


^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2014-03-05  8:45 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2014-03-04 22:40 [PATCH 0/3] RDSEED support for the Linux kernel H. Peter Anvin
2014-03-04 22:40 ` [PATCH 1/3] x86, random: Enable the RDSEED instruction H. Peter Anvin
2014-03-05  8:43   ` Ingo Molnar
2014-03-04 22:40 ` [PATCH 2/3] random: Use arch_get_random_seed*() at init time and once a second H. Peter Anvin
2014-03-05  8:44   ` Ingo Molnar
2014-03-04 22:40 ` [PATCH 3/3] random: If we have arch_get_random_seed*(), try it before blocking H. Peter Anvin
2014-03-05  8:45   ` Ingo Molnar

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).