freebsd-dev/sys
Justin Hibbits b14959dacc random: Add PowerPC 'darn' instruction entropy source
Summary:
PowerISA 3.0 adds a 'darn' instruction to "deliver a random number".  This
driver was modeled after (rather, copied and gutted of) the Ivy Bridge
rdrand driver.

This uses the "Conditional Random Number" behavior to remove input bias.

From the ISA reference the 'darn' instruction, and the random number
generator backing it, conforms to the NIST SP800-90B and SP800-90C
standards, compliant to the extent possible at the time the hardware was
designed, and guarantees a minimum 0.5 bits of entropy per bit returned.

Reviewed By:	markm, secteam (delphij)
Approved by:	secteam (delphij)
Differential Revision: https://reviews.freebsd.org/D16552
2018-08-17 03:49:07 +00:00
..
amd64 Fix early EFIRT on PCID machines after r337773. 2018-08-15 12:48:49 +00:00
arm arm: Define crypto option on platforms that include IPsec 2018-08-17 01:04:02 +00:00
arm64 Set the Execute Never flags in EFI device memory as required by the ARMv8 2018-08-15 13:19:15 +00:00
bsm
cam Flesh out a comment about what we're doing with read bias and trims. 2018-08-15 00:15:40 +00:00
cddl Make vfs.zfs.zio.dva_throttle_enabled sysctl writable. 2018-08-16 18:44:50 +00:00
compat Revert r337922, except for some documention-only bits. This needs to wait 2018-08-16 19:09:43 +00:00
conf random: Add PowerPC 'darn' instruction entropy source 2018-08-17 03:49:07 +00:00
contrib Bring in libsodium to sys/contrib 2018-08-17 00:23:50 +00:00
crypto Bring in compatibility glue for libsodium 2018-08-17 00:27:56 +00:00
ddb add an option for ddb ps command to print process arguments 2018-08-09 11:21:31 +00:00
dev random: Add PowerPC 'darn' instruction entropy source 2018-08-17 03:49:07 +00:00
dts
fs Put jail(2) under COMPAT_FREEBSD11. It has been the "old" way of creating 2018-08-16 18:40:16 +00:00
gdb
geom
gnu Import DTS files from Linux 4.18 2018-08-13 06:40:20 +00:00
i386 Implement kernel support for early loading of Intel microcode updates. 2018-08-13 17:13:09 +00:00
isa
kern subr_prf: Don't write kern.boot_tag if it's empty 2018-08-17 03:42:57 +00:00
kgssapi
libkern
mips Query MVPConf0.PVPE for number of CPUs. 2018-08-14 16:29:10 +00:00
modules Add xform-conforming auth_hash wrapper for Poly-1305 2018-08-17 00:30:04 +00:00
net if_vlan(4): A VLAN always has a PCP and its ifnet's if_pcp should be set 2018-08-17 01:03:23 +00:00
net80211 Fix misspellings of transmitter/transmitted 2018-08-10 20:37:32 +00:00
netgraph The interface name must be sanitized before the search to match the existing 2018-08-15 13:42:22 +00:00
netinet Add the ability to look up the 3b PCP of a VLAN interface. Use it in 2018-08-16 23:46:38 +00:00
netinet6 Properly initialize IP version in IPv6 header. This was missed in r334673. 2018-08-16 09:19:06 +00:00
netipsec
netpfil Fix a typo in comment. 2018-08-15 16:36:29 +00:00
netsmb
nfs
nfsclient
nfsserver
nlm
ofed
opencrypto crypto(4): Add cryptosoft, cryptodev support for Poly-1305 2018-08-17 00:31:06 +00:00
powerpc powerpc: Add lwsync and ptesync 'sync' opcode variants to ddb disassembler 2018-08-10 03:28:40 +00:00
riscv Riscv: Include crypto for IPSec 2018-08-17 01:08:22 +00:00
rpc
security Require that MAC label buffers be able to store a non-empty string. 2018-08-01 03:46:07 +00:00
sparc64 Add pmap_is_valid_memattr(9). 2018-08-01 18:45:51 +00:00
sys random: Add PowerPC 'darn' instruction entropy source 2018-08-17 03:49:07 +00:00
teken
tests
tools
ufs Put jail(2) under COMPAT_FREEBSD11. It has been the "old" way of creating 2018-08-16 18:40:16 +00:00
vm Prevent some parallel swap-ins, rate-limit swapper swap-ins. 2018-08-13 16:48:46 +00:00
x86 Help ensure that the copy loop doesn't get converted to a memcpy() call. 2018-08-14 19:21:31 +00:00
xdr
xen
Makefile