kernel - Improve basic entropy collector master
authorMatthew Dillon <dillon@apollo.backplane.com>
Wed, 1 Jul 2015 17:07:21 +0000 (10:07 -0700)
committerMatthew Dillon <dillon@apollo.backplane.com>
Wed, 1 Jul 2015 17:11:23 +0000 (10:11 -0700)
commitba218aa7a68599ce1b72995641c4bb50fa95788f
tree3a618094d812fa661f72ba67baebe6bedf6357b2
parent7cb11ced8650756bd7455758d641b6f2619d09f0
kernel - Improve basic entropy collector

* Faster time-buffered period in first 120 seconds after boot to help seed
  the generator.  This helps when other sources such as RDRAND are not available.

* Use a systimer instead of tsleep to make the 'random' loop delay more random.

* Do a better job incorporating interrupt randomness with a combination of
  counter and low TSC bits.

* Get rid of the double-time-buffering restrictions (one in the thread, one in
  NANOUP_EVENT().  Also incorporate the low TSC bits in different bit positions
  to try to avoid XOR deconstruction against tv_nsec.

Reported-by: tuxillo
sys/kern/kern_nrandom.c