freebsd-skq/sys/dev
cem 64c02f0c28 random(4): Fortuna: Enable concurrent generation by default for 13
Flip the knob added in r349154 to "enabled."  The commit message from that
revision and associated code comment describe the rationale, implementation,
and motivation for the new default in detail.  I have dog-fooded this
configuration on my own systems for six months, for what that's worth.

For end-users: the result is just as secure.  The benefit is a faster, more
responsive system when processes produce significant demand on random(4).

As mentioned in the earlier commit, the prior behavior may be restored by
setting the kern.random.fortuna.concurrent_read="0" knob in loader.conf(5).

This scales the random generation side of random(4) somewhat, although there
is still a global mutex being shared by all cores and rand_harvestq; the
situation is generally much better than it was before on small CPU systems,
but do not expect miracles on 256-core systems running 256-thread full-rate
random(4) read.  Work is ongoing to address both the generation-side (in
more depth) and the harvest-side scaling problems.

Approved by:	csprng(delphij, markm)
Tested by:	markm
Differential Revision:	https://reviews.freebsd.org/D22879
2019-12-20 08:31:23 +00:00
..
aac Don't need giant for these drivers dev nodes. 2019-11-24 15:37:19 +00:00
aacraid Remove ifdefs for FreeBSD 6, 7, 8 and 9. Assume we're past that. 2019-12-06 21:50:24 +00:00
acpi_support Add embedded Managed Object Format blob access to acpi_wmi(4). 2019-09-06 10:12:05 +00:00
acpica acpi(4): Add _CID to PNP info string 2019-12-18 06:22:28 +00:00
adb kbd drivers: don't double register keyboard drivers 2019-12-16 16:41:24 +00:00
adlink
ae Convert to if_foreach_llmaddr() KPI. 2019-10-21 17:59:53 +00:00
age Convert to if_foreach_llmaddr() KPI. 2019-10-21 18:00:17 +00:00
agp Complete the removal of the "wire_count" field from struct vm_page. 2019-09-25 16:11:35 +00:00
ahci Use a void * argument to callout handlers instead of timeout_t casts. 2019-12-05 18:47:29 +00:00
aic7xxx Use callout_func_t instead of the deprecated timeout_t. 2019-12-10 22:06:53 +00:00
al_eth Convert to if_foreach_llmaddr() KPI. 2019-10-21 18:05:43 +00:00
alc Convert to if_foreach_llmaddr() KPI. 2019-10-21 18:06:06 +00:00
ale Convert to if_foreach_llmaddr() KPI. 2019-10-21 18:06:09 +00:00
alpm
altera Convert to if_foreach_llmaddr() KPI. 2019-10-21 18:10:46 +00:00
amd_ecc_inject
amdgpio amdgpio: small formatting cleanup 2019-05-24 06:07:33 +00:00
amdpm
amdsbwd Extract eventfilter declarations to sys/_eventfilter.h 2019-05-20 00:38:23 +00:00
amdsmb
amdsmn amdtemp(4), amdsmn(4): Attach to Ryzen 3 (Zen 2) hostbridges 2019-08-06 03:54:27 +00:00
amdtemp amdtemp(4), amdsmn(4): Attach to Ryzen 3 (Zen 2) hostbridges 2019-08-06 03:54:27 +00:00
amr
an an(4): Require privileges for all SIOCGAIRONET requests. 2019-12-17 21:34:38 +00:00
arcmsr
asmc asmc: Add support for Mac mini 2,1 2019-02-25 21:59:01 +00:00
ata Avoid a tautological bitwise compare. 2019-12-17 00:10:19 +00:00
ath Convert to if_foreach_llmaddr() KPI. 2019-10-21 18:06:15 +00:00
atkbdc kbd: provide default implementations of get_fkeystr/diag 2019-12-16 02:44:56 +00:00
auxio
axgbe
bce Convert to if_foreach_llmaddr() KPI. 2019-10-21 18:06:19 +00:00
beri vfs: introduce v_irflag and make v_type smaller 2019-12-08 21:30:04 +00:00
bfe Convert to if_foreach_llmaddr() KPI. 2019-10-21 18:06:23 +00:00
bge Convert to if_foreach_llmaddr() KPI. 2019-10-21 18:06:26 +00:00
bhnd Avoid relying on header pollution from sys/refcount.h. 2019-07-29 20:26:01 +00:00
bktr
bnxt Convert to if_foreach_llmaddr() KPI. 2019-10-21 18:10:52 +00:00
bvm
bwi Fix ieee80211_radiotap(9) usage in wireless drivers: 2019-03-11 01:27:01 +00:00
bwn Fix a logic bug when "mask" contains a ?: operator. 2019-11-27 20:00:44 +00:00
bxe Convert to if_foreach_llmaddr() KPI. 2019-10-21 18:06:31 +00:00
cadence Convert to if_foreach_llmaddr() KPI. 2019-10-21 18:10:58 +00:00
cardbus Regularize my copyright notice 2019-12-04 16:56:11 +00:00
cas Convert to if_foreach_llmaddr() KPI. 2019-10-21 18:11:02 +00:00
ce
cesa
cfe
cfi cfi: #include <limits.h> for ULONG_MAX after r355101 2019-11-26 02:26:34 +00:00
chromebook_platform [ig4] Give common name to PCI and ACPI device drivers 2019-11-03 20:39:46 +00:00
ciss Don't print the request we may be aborting in ciss_notify_abort as 2019-06-13 05:19:42 +00:00
cmx Extract eventfilter declarations to sys/_eventfilter.h 2019-05-20 00:38:23 +00:00
coretemp Extract eventfilter declarations to sys/_eventfilter.h 2019-05-20 00:38:23 +00:00
cp
cpuctl TSX Asynchronous Abort mitigation for Intel CVE-2019-11135. 2019-11-16 00:26:42 +00:00
cpufreq cpufreq_dt: Do not fetch again hw.ncpu 2019-12-03 22:26:55 +00:00
ctau ctau.c: convert from KOI8-R to UTF-8 encoding 2019-12-03 16:52:03 +00:00
cx
cxgb Convert to if_foreach_llmaddr() KPI. 2019-10-21 18:11:08 +00:00
cxgbe cxgbe(4): check if the firmware supports FW_RI_FR_NSMR_TPTE_WR work 2019-12-18 19:10:30 +00:00
cy
cyapa [cyapa] Postpone start of the polling thread until sleep is available 2019-11-03 20:55:28 +00:00
dc Convert to if_foreach_llmaddr() KPI. 2019-10-21 18:11:15 +00:00
dcons Extract eventfilter declarations to sys/_eventfilter.h 2019-05-20 00:38:23 +00:00
dme Update dme(4) to reflect that it will not be removed due to FCP-101. 2019-05-08 19:05:58 +00:00
dpaa schedlock 4/4 2019-12-15 21:26:50 +00:00
dpms
drm2 (4/6) Protect page valid with the busy lock. 2019-10-15 03:45:41 +00:00
dwc Convert to if_foreach_llmaddr() KPI. 2019-10-21 18:11:19 +00:00
e1000 net: prefer ETHER_ADDR_LEN over ETH_ADDR_LEN 2019-11-04 22:57:36 +00:00
efidev efirt efi_enter(): Release acquired locks and restore FPU ownership if 2019-06-03 15:41:45 +00:00
ena Make valdiate_rx_req_id static inline because it uses other static 2019-11-02 02:05:09 +00:00
esp
et Convert to if_foreach_llmaddr() KPI. 2019-10-21 18:11:28 +00:00
etherswitch Add support for the Marvell 88E6190 11 ports switch. 2019-07-01 13:41:37 +00:00
evdev Extract eventfilter declarations to sys/_eventfilter.h 2019-05-20 00:38:23 +00:00
exca Move attachment of pccard children into exca library. Attach the 2019-12-16 21:35:02 +00:00
extres Implement support for (soft)linked clocks. 2019-11-08 18:57:41 +00:00
fb Stop the VESA driver from whining loudly in the dmesg during boot on 2019-11-13 15:31:31 +00:00
fdc Regularize my copyright notice 2019-12-04 16:56:11 +00:00
fdt fdt_slicer: bump to SI_ORDER_THIRD following r347183 2019-09-29 03:12:35 +00:00
ffec Convert to if_foreach_llmaddr() KPI. 2019-10-21 18:11:32 +00:00
filemon Remove unused argument to priv_check_cred. 2018-12-11 19:32:16 +00:00
firewire Widen NET_EPOCH coverage. 2019-10-07 22:40:05 +00:00
flash Regularize my copyright notice 2019-12-04 16:56:11 +00:00
fxp Convert to if_foreach_llmaddr() KPI. 2019-10-21 18:06:53 +00:00
gem Convert to if_foreach_llmaddr() KPI. 2019-10-21 18:06:57 +00:00
glxiic Create new wrapper function: bus_delayed_attach_children() 2019-12-13 19:39:33 +00:00
glxsb
gpio kbd drivers: don't double register keyboard drivers 2019-12-16 16:41:24 +00:00
gxemul
hdmi Remove "all rights reserved" from copyright for the file that Jared McNeill 2019-12-03 21:05:33 +00:00
hifn
hme Convert to if_foreach_llmaddr() KPI. 2019-10-21 18:07:02 +00:00
hpt27xx Revert r355021. In my haste to grep for Giant, I missed that it was in 2019-11-26 17:25:49 +00:00
hptiop
hptmv
hptnr
hptrr
hwpmc Add x86 msr tweak KPI. 2019-11-18 20:53:57 +00:00
hyperv kbd drivers: don't double register keyboard drivers 2019-12-16 16:41:24 +00:00
ic
ichiic [ig4] Remove unused methods from bus interface 2019-12-10 20:23:05 +00:00
ichsmb Create new wrapper function: bus_delayed_attach_children() 2019-12-13 19:39:33 +00:00
ichwd Extract eventfilter declarations to sys/_eventfilter.h 2019-05-20 00:38:23 +00:00
ida Extract eventfilter declarations to sys/_eventfilter.h 2019-05-20 00:38:23 +00:00
if_ndis Convert to if_foreach_llmaddr() KPI. 2019-10-21 18:11:38 +00:00
iicbus iicoc: fix the build on PCI machines 2019-12-20 05:15:03 +00:00
iir Extract eventfilter declarations to sys/_eventfilter.h 2019-05-20 00:38:23 +00:00
imcsmb Remove unecessary "All rights reserved" from files under my or Panasas's 2019-01-30 16:55:00 +00:00
intel
intpm intpm: change translation of HBA error status to smbus(4) errors 2019-03-22 10:38:22 +00:00
io
ioat Add ioat_get_domain() to ioat(4) KPI. 2019-11-19 02:09:04 +00:00
ipmi The current IPMI KCS code is waiting 100us for all transitions (roughly 2019-06-12 16:06:31 +00:00
ips Add the likely missing braces in ips(4). This is found by gcc warning that 2019-05-29 18:11:17 +00:00
ipw Fix ieee80211_radiotap(9) usage in wireless drivers: 2019-03-11 01:27:01 +00:00
isci Enforce a 4GB DMA boundary on isci(4) 2019-07-10 22:23:59 +00:00
iscsi Separate kernel crc32() implementation to its own header (gsb_crc32.h) and 2019-06-17 19:49:08 +00:00
iscsi_initiator Separate kernel crc32() implementation to its own header (gsb_crc32.h) and 2019-06-17 19:49:08 +00:00
iser
isl
ismt
isp Use callout_func_t instead of the deprecated timeout_t. 2019-12-10 22:06:53 +00:00
ispfw
itwd itwd(4): driver for watchdog function in ITE Super I/O chips 2019-10-16 14:57:38 +00:00
iwi urtw(4), otus(4), iwi(4): allow to set non-default MAC address via ifconfig(8) 2019-04-10 08:17:56 +00:00
iwm iwm(4): Remove _mvm from the namespace. 2019-11-27 20:32:53 +00:00
iwn Fix ieee80211_radiotap(9) usage in wireless drivers: 2019-03-11 01:27:01 +00:00
ixgbe if_ixv: disable RSS configuration on 82599 and X540 VFs 2019-11-05 06:34:20 +00:00
ixl Fix compile error introduced in r353658 2019-10-16 18:12:22 +00:00
jedec_dimm Teach jedec_dimm(4) to be more forgiving of non-fatal errors. 2019-03-27 21:50:01 +00:00
jme Convert to if_foreach_llmaddr() KPI. 2019-10-21 18:11:43 +00:00
kbd kbd: const'ify a couple of keyboard_driver fields 2019-12-17 03:30:49 +00:00
kbdmux kbd drivers: don't double register keyboard drivers 2019-12-16 16:41:24 +00:00
ksyms Convert ksyms(4) to use an OBJT_PHYS object. 2019-11-06 17:03:06 +00:00
le Convert to if_foreach_llmaddr() KPI. 2019-10-21 18:07:07 +00:00
led Extract eventfilter declarations to sys/_eventfilter.h 2019-05-20 00:38:23 +00:00
lge Convert to if_foreach_llmaddr() KPI. 2019-10-21 18:07:11 +00:00
liquidio Convert to if_foreach_llmaddr() KPI. 2019-10-21 18:11:48 +00:00
malo Convert to if_foreach_llmaddr() KPI. 2019-10-21 18:11:54 +00:00
mbox
mc146818
md Add a deferred free mechanism for freeing swap space that does not require 2019-12-15 03:15:06 +00:00
mdio
mem
mfi Extract eventfilter declarations to sys/_eventfilter.h 2019-05-20 00:38:23 +00:00
mgb mgb: Correct spello - recieve -> receive 2019-11-06 20:43:40 +00:00
mge Convert to if_foreach_llmaddr() KPI. 2019-10-21 18:07:15 +00:00
mii Regularize my copyright notice 2019-12-04 16:56:11 +00:00
mk48txx
mlx Extract eventfilter declarations to sys/_eventfilter.h 2019-05-20 00:38:23 +00:00
mlx4 Split out a more generic debugnet(4) from netdump(4) 2019-10-17 16:23:03 +00:00
mlx5 Fix compilation issue with mlx5core and sparc64 (gcc48): 2019-12-06 16:20:22 +00:00
mlxfw Initial version of Mellanox in-kernel firmware upgrade support. 2019-05-08 10:49:05 +00:00
mly
mmc dwmmc: Use device_delete_children 2019-12-11 19:40:30 +00:00
mmcnull
mn
mpr Fix leak in state machine for commands. 2019-11-24 15:24:05 +00:00
mps Fix leak in state machine for commands. 2019-11-24 15:24:05 +00:00
mpt Use callout_func_t instead of the deprecated timeout_t. 2019-12-10 22:06:53 +00:00
mrsas add mrsas_shutdown method 2019-05-23 12:51:13 +00:00
msk Convert to if_foreach_llmaddr() KPI. 2019-10-21 18:07:19 +00:00
mthca
mvs Use a void * argument to callout handlers instead of timeout_t casts. 2019-12-05 18:47:29 +00:00
mwl Fix ieee80211_radiotap(9) usage in wireless drivers: 2019-03-11 01:27:01 +00:00
mxge Convert to if_foreach_llmaddr() KPI. 2019-10-14 20:18:36 +00:00
my Convert to if_foreach_llmaddr() KPI. 2019-10-21 18:11:58 +00:00
nctgpio nctgpio: improve performance (latency) of operation 2019-10-22 14:20:35 +00:00
neta Update mvneta/e6000sw for new DSA Device Tree Bindings 2019-03-23 02:48:47 +00:00
netfpga10g/nf10bmac
netmap add valectl to the system commands 2019-10-31 21:01:34 +00:00
nfe Convert to if_foreach_llmaddr() KPI. 2019-10-21 18:07:24 +00:00
nfsmb
nge Convert to if_foreach_llmaddr() KPI. 2019-10-21 18:07:28 +00:00
nmdm Extract eventfilter declarations to sys/_eventfilter.h 2019-05-20 00:38:23 +00:00
ntb Make DMAR allow Intel NTB device to access its own BAR0. 2019-11-28 02:40:12 +00:00
null List-ify kernel dump device configuration 2019-05-06 18:24:07 +00:00
nvd Add missing break statements in r351004. 2019-08-14 02:02:14 +00:00
nvdimm nvdimm(4): Fix various problems when the using the second label index block 2019-11-12 16:24:37 +00:00
nvme Properly synchronize completion DMA buffers. 2019-12-15 14:28:38 +00:00
nvram
nvram2env
oce oce: Tighten input validation in the SIOCGI2C handler. 2019-12-18 18:44:16 +00:00
ocs_fc schedlock 1/4 2019-12-15 21:11:15 +00:00
ofw Add an OFWBUS_PNP_INFO() macro for devices that hang directly off the root 2019-11-30 19:16:44 +00:00
otus Convert to if_foreach_llmaddr() KPI. 2019-10-21 18:12:07 +00:00
ow Update owc_gpiobus (one-wire over gpio) to the modern gpio_pin interface. 2019-12-17 15:56:48 +00:00
pbio
pccard Regularize my copyright notice 2019-12-04 16:56:11 +00:00
pccbb Add back accidentally dropped masking... 2019-12-16 23:08:09 +00:00
pcf pcf(4): fix parentheses in if condition 2019-01-27 15:19:28 +00:00
pci Remove VMware MSI-X from the PCI blacklist. 2019-12-18 23:00:56 +00:00
pms Fix a scribbler in the PMS driver. 2019-03-11 14:26:45 +00:00
powermac_nvram
ppbus Use callout_func_t instead of the deprecated timeout_t. 2019-12-10 22:06:53 +00:00
ppc
proto Lock busdma operations and serialize detach against open/close 2019-07-04 02:51:34 +00:00
psci Add generic arm/arm64 secure-monitor SMCCC interface and switch 2019-09-13 15:56:33 +00:00
pst
pty
puc Regularize my copyright notice 2019-12-04 16:56:11 +00:00
pwm Remove "all rights reserved" from copyright for the file I own. 2019-12-03 21:00:45 +00:00
qlnx Convert to if_foreach_llmaddr() KPI. 2019-10-21 18:12:12 +00:00
qlxgb Convert to if_foreach_llmaddr() KPI. 2019-10-21 18:12:17 +00:00
qlxgbe Convert to if_foreach_llmaddr() KPI. 2019-10-21 18:12:21 +00:00
qlxge Convert to if_foreach_llmaddr() KPI. 2019-10-21 18:12:26 +00:00
quicc Remove more needless <sys/tty.h> includes 2019-12-01 20:43:37 +00:00
ral [Bug 240473] add support of Ralink RT5390R Wireless Card 2019-09-12 18:37:26 +00:00
random random(4): Fortuna: Enable concurrent generation by default for 13 2019-12-20 08:31:23 +00:00
rc Drop "All rights reserved" from my copyright statements. 2019-03-06 22:11:45 +00:00
rccgpio
re Convert to if_foreach_llmaddr() KPI. 2019-10-21 18:07:32 +00:00
rl Convert to if_foreach_llmaddr() KPI. 2019-10-21 18:07:35 +00:00
rndtest
rp Remove more needless <sys/tty.h> includes 2019-12-01 20:43:37 +00:00
rt
rtwn Convert to if_foreach_llmaddr() KPI. 2019-10-21 18:12:31 +00:00
safe
sbni Use callout_func_t instead of the deprecated timeout_t. 2019-12-10 22:06:53 +00:00
scc Extract eventfilter declarations to sys/_eventfilter.h 2019-05-20 00:38:23 +00:00
sdhci Regularize my copyright notice 2019-12-04 16:56:11 +00:00
sdio Add SDIO support. 2019-06-08 16:26:56 +00:00
sec
sfxge Convert to if_foreach_llmaddr() KPI. 2019-10-14 20:33:14 +00:00
sge Convert to if_foreach_llmaddr() KPI. 2019-10-21 18:07:40 +00:00
siis Use a void * argument to callout handlers instead of timeout_t casts. 2019-12-05 18:47:29 +00:00
sis Convert to if_foreach_llmaddr() KPI. 2019-10-21 18:07:44 +00:00
sk Convert to if_foreach_llmaddr() KPI. 2019-10-21 18:07:49 +00:00
smartpqi Use callout(9) instead of deprecated timeout(9). 2019-12-13 19:56:48 +00:00
smbus
smc Use callout_func_t instead of the deprecated timeout_t. 2019-12-10 22:06:53 +00:00
snp snp: don't reference tp->t_mtx directly 2019-11-29 03:51:01 +00:00
sound Configure headphone redirection for the Dell L780 and X1 Carbon 7th gen. 2019-12-09 19:25:15 +00:00
speaker
spibus Regularize my copyright notice 2019-12-04 16:56:11 +00:00
ste Convert to if_foreach_llmaddr() KPI. 2019-10-21 18:07:53 +00:00
stge Convert to if_foreach_llmaddr() KPI. 2019-10-21 18:07:56 +00:00
superio superio: do not crash if failed to create the character device 2019-10-25 16:30:24 +00:00
sym
syscons Use callout_func_t instead of the deprecated timeout_t. 2019-12-10 22:06:53 +00:00
tcp_log Regularize the Netflix copyright 2019-02-04 21:28:25 +00:00
tdfx
terasic Fix off-by-one (page) errors in checks in d_mmap methods of several drivers. 2018-12-02 18:30:58 +00:00
ti Convert to if_foreach_llmaddr() KPI. 2019-10-21 18:08:03 +00:00
tpm Improve tpm20 style 2019-04-16 02:46:21 +00:00
tsec Convert to if_foreach_llmaddr() KPI. 2019-10-21 18:12:36 +00:00
twa remove the 4GB boundary requirement on PCI DMA segments 2019-04-19 13:43:33 +00:00
twe
tws Extract eventfilter declarations to sys/_eventfilter.h 2019-05-20 00:38:23 +00:00
uart kbd: provide default implementations of get_fkeystr/diag 2019-12-16 02:44:56 +00:00
ubsec
usb kbd drivers: don't double register keyboard drivers 2019-12-16 16:41:24 +00:00
veriexec Add a new ioctl for the larger params struct that includes the label. 2019-05-17 19:27:07 +00:00
vge Convert to if_foreach_llmaddr() KPI. 2019-10-21 18:08:12 +00:00
viapm
viawd Extract eventfilter declarations to sys/_eventfilter.h 2019-05-20 00:38:23 +00:00
videomode
virtio Introduce vm_page_astate. 2019-12-10 18:14:50 +00:00
vkbd kbd drivers: don't double register keyboard drivers 2019-12-16 16:41:24 +00:00
vmd This driver attaches to the Intel VMD drive and connects a new PCI domain 2019-10-10 03:12:17 +00:00
vmware Fix build with GCC 2019-11-15 01:07:39 +00:00
vnic vnic: Relax PHY node matching after r336281. 2019-12-18 21:41:53 +00:00
vr Convert to if_foreach_llmaddr() KPI. 2019-10-21 18:08:16 +00:00
vt Enable use of ofwcons for early debug 2019-12-09 13:40:23 +00:00
vte Convert to if_foreach_llmaddr() KPI. 2019-10-21 18:08:20 +00:00
watchdog Extract eventfilter declarations to sys/_eventfilter.h 2019-05-20 00:38:23 +00:00
wbwd wbwd: small clean-ups and improvements 2019-10-17 06:21:09 +00:00
wi Regularize my copyright notice 2019-12-04 16:56:11 +00:00
wpi Fix ieee80211_radiotap(9) usage in wireless drivers: 2019-03-11 01:27:01 +00:00
wtap Fix ieee80211_radiotap(9) usage in wireless drivers: 2019-03-11 01:27:01 +00:00
xdma xdma: avoid NULL deref in error case 2019-08-30 00:40:08 +00:00
xen vfs: introduce v_irflag and make v_type smaller 2019-12-08 21:30:04 +00:00
xilinx Convert to if_foreach_llmaddr() KPI. 2019-10-21 18:12:58 +00:00
xl Convert to if_foreach_llmaddr() KPI. 2019-10-21 18:08:25 +00:00
xz Modularize xz. 2019-02-26 19:55:03 +00:00
zlib Expose zlib's utility functions in Z_SOLO library when building kernel. 2019-08-07 01:41:17 +00:00