Linus Torvalds
3f2dc2798b
Merge branch 'entropy'
...
Merge active entropy generation updates.
This is admittedly partly "for discussion". We need to have a way
forward for the boot time deadlocks where user space ends up waiting for
more entropy, but no entropy is forthcoming because the system is
entirely idle just waiting for something to happen.
While this was triggered by what is arguably a user space bug with
GDM/gnome-session asking for secure randomness during early boot, when
they didn't even need any such truly secure thing, the issue ends up
being that our "getrandom()" interface is prone to that kind of
confusion, because people don't think very hard about whether they want
to block for sufficient amounts of entropy.
The approach here-in is to decide to not just passively wait for entropy
to happen, but to start actively collecting it if it is missing. This
is not necessarily always possible, but if the architecture has a CPU
cycle counter, there is a fair amount of noise in the exact timings of
reasonably complex loads.
We may end up tweaking the load and the entropy estimates, but this
should be at least a reasonable starting point.
As part of this, we also revert the revert of the ext4 IO pattern
improvement that ended up triggering the reported lack of external
entropy.
* getrandom() active entropy waiting:
Revert "Revert "ext4: make __ext4_get_inode_loc plug""
random: try to actively add entropy rather than passively wait for it
2019-09-29 19:25:39 -07:00
..
agp
ia64: remove support for machvecs
2019-08-16 14:32:26 -07:00
hw_random
hwrng: core - don't wait on add_early_randomness()
2019-09-20 23:05:33 +10:00
ipmi
ipmi_si_intf: Fix race in timer shutdown handling
2019-09-12 16:03:18 -05:00
mwave
treewide: Add SPDX license identifier - Makefile/Kconfig
2019-05-21 10:50:46 +02:00
pcmcia
treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 18
2019-05-21 11:28:46 +02:00
tpm
tpm: Wrap the buffer from the caller to tpm_buf in tpm_send()
2019-09-25 02:43:57 +03:00
xilinx_hwicap
treewide: Add SPDX license identifier - Makefile/Kconfig
2019-05-21 10:50:46 +02:00
xillybus
PCI: Move ASPM declarations to linux/pci.h
2019-08-28 08:28:39 -05:00
adi.c
char: sparc64: Add privileged ADI driver
2018-06-05 11:24:55 -07:00
apm-emulation.c
treewide: Add SPDX license identifier for more missed files
2019-05-21 10:50:45 +02:00
applicom.c
treewide: Add SPDX license identifier for more missed files
2019-05-21 10:50:45 +02:00
applicom.h
License cleanup: add SPDX GPL-2.0 license identifier to files with no license
2017-11-02 11:10:55 +01:00
bsr.c
Merge 5.2-rc4 into char-misc-next
2019-06-09 09:11:21 +02:00
ds1620.c
treewide: Add SPDX license identifier for more missed files
2019-05-21 10:50:45 +02:00
dsp56k.c
vfs: do bulk POLL* -> EPOLL* replacement
2018-02-11 14:34:03 -08:00
dtlk.c
treewide: Add SPDX license identifier for more missed files
2019-05-21 10:50:45 +02:00
efirtc.c
treewide: Add SPDX license identifier for more missed files
2019-05-21 10:50:45 +02:00
hangcheck-timer.c
treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 405
2019-06-05 17:37:13 +02:00
hpet.c
hpet: Fix division by zero in hpet_time_div()
2019-07-25 14:39:51 +02:00
Kconfig
ia64 for v5.4 - big change here is removal of support for SGI Altix
2019-09-16 15:32:01 -07:00
lp.c
treewide: Add SPDX license identifier for more missed files
2019-05-21 10:50:45 +02:00
Makefile
char: remove the SGI tiocx/mbcs driver
2019-08-16 11:33:56 -07:00
mem.c
Merge branch 'next-lockdown' of git://git.kernel.org/pub/scm/linux/kernel/git/jmorris/linux-security
2019-09-28 08:14:15 -07:00
misc.c
char: misc: Move EXPORT_SYMBOL immediately next to the functions/varibles
2019-05-24 18:00:41 +02:00
mspec.c
char/mspec: remove SGI SN2 support
2019-08-16 11:33:56 -07:00
nsc_gpio.c
treewide: Add SPDX license identifier for more missed files
2019-05-21 10:50:45 +02:00
nvram.c
treewide: Add SPDX license identifier for more missed files
2019-05-21 10:50:45 +02:00
nwbutton.c
treewide: Add SPDX license identifier for more missed files
2019-05-21 10:50:45 +02:00
nwbutton.h
treewide: Switch DEFINE_TIMER callbacks to struct timer_list *
2017-11-21 15:57:05 -08:00
nwflash.c
treewide: Add SPDX license identifier for more missed files
2019-05-21 10:50:45 +02:00
pc8736x_gpio.c
treewide: Add SPDX license identifier for more missed files
2019-05-21 10:50:45 +02:00
powernv-op-panel.c
treewide: Add SPDX license identifier for more missed files
2019-05-21 10:50:45 +02:00
ppdev.c
char: ppdev: Fix a possible null-pointer dereference in pp_release()
2019-07-25 13:21:15 +02:00
ps3flash.c
treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 164
2019-05-30 11:26:38 -07:00
random.c
Merge branch 'entropy'
2019-09-29 19:25:39 -07:00
raw.c
treewide: Add SPDX license identifier for more missed files
2019-05-21 10:50:45 +02:00
rtc.c
treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 152
2019-05-30 11:26:32 -07:00
scx200_gpio.c
treewide: Add SPDX license identifier for more missed files
2019-05-21 10:50:45 +02:00
sonypi.c
treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 61
2019-05-24 17:36:45 +02:00
tb0219.c
treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 156
2019-05-30 11:26:35 -07:00
tlclk.c
tlclk: clean an indentation issue, remove extraneous tabs
2018-11-11 12:58:27 -08:00
toshiba.c
toshiba: Add correct printk log level while emitting error log
2019-09-04 13:42:43 +02:00
ttyprintk.c
treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 402
2019-06-05 17:37:13 +02:00
uv_mmtimer.c
virtio_console.c
treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 156
2019-05-30 11:26:35 -07:00