linux-xiaomi-chiron/include/linux
Jason A. Donenfeld 6f98a4bfee random: block in /dev/urandom
This topic has come up countless times, and usually doesn't go anywhere.
This time I thought I'd bring it up with a slightly narrower focus,
updated for some developments over the last three years: we finally can
make /dev/urandom always secure, in light of the fact that our RNG is
now always seeded.

Ever since Linus' 50ee7529ec ("random: try to actively add entropy
rather than passively wait for it"), the RNG does a haveged-style jitter
dance around the scheduler, in order to produce entropy (and credit it)
for the case when we're stuck in wait_for_random_bytes(). How ever you
feel about the Linus Jitter Dance is beside the point: it's been there
for three years and usually gets the RNG initialized in a second or so.

As a matter of fact, this is what happens currently when people use
getrandom(). It's already there and working, and most people have been
using it for years without realizing.

So, given that the kernel has grown this mechanism for seeding itself
from nothing, and that this procedure happens pretty fast, maybe there's
no point any longer in having /dev/urandom give insecure bytes. In the
past we didn't want the boot process to deadlock, which was
understandable. But now, in the worst case, a second goes by, and the
problem is resolved. It seems like maybe we're finally at a point when
we can get rid of the infamous "urandom read hole".

The one slight drawback is that the Linus Jitter Dance relies on random_
get_entropy() being implemented. The first lines of try_to_generate_
entropy() are:

	stack.now = random_get_entropy();
	if (stack.now == random_get_entropy())
		return;

On most platforms, random_get_entropy() is simply aliased to get_cycles().
The number of machines without a cycle counter or some other
implementation of random_get_entropy() in 2022, which can also run a
mainline kernel, and at the same time have a both broken and out of date
userspace that relies on /dev/urandom never blocking at boot is thought
to be exceedingly low. And to be clear: those museum pieces without
cycle counters will continue to run Linux just fine, and even
/dev/urandom will be operable just like before; the RNG just needs to be
seeded first through the usual means, which should already be the case
now.

On systems that really do want unseeded randomness, we already offer
getrandom(GRND_INSECURE), which is in use by, e.g., systemd for seeding
their hash tables at boot. Nothing in this commit would affect
GRND_INSECURE, and it remains the means of getting those types of random
numbers.

This patch goes a long way toward eliminating a long overdue userspace
crypto footgun. After several decades of endless user confusion, we will
finally be able to say, "use any single one of our random interfaces and
you'll be fine. They're all the same. It doesn't matter." And that, I
think, is really something. Finally all of those blog posts and
disagreeing forums and contradictory articles will all become correct
about whatever they happened to recommend, and along with it, a whole
class of vulnerabilities eliminated.

With very minimal downside, we're finally in a position where we can
make this change.

Cc: Dinh Nguyen <dinguyen@kernel.org>
Cc: Nick Hu <nickhu@andestech.com>
Cc: Max Filippov <jcmvbkbc@gmail.com>
Cc: Palmer Dabbelt <palmer@dabbelt.com>
Cc: David S. Miller <davem@davemloft.net>
Cc: Yoshinori Sato <ysato@users.sourceforge.jp>
Cc: Michal Simek <monstr@monstr.eu>
Cc: Borislav Petkov <bp@alien8.de>
Cc: Guo Ren <guoren@kernel.org>
Cc: Geert Uytterhoeven <geert@linux-m68k.org>
Cc: Joshua Kinard <kumba@gentoo.org>
Cc: David Laight <David.Laight@aculab.com>
Cc: Dominik Brodowski <linux@dominikbrodowski.net>
Cc: Eric Biggers <ebiggers@google.com>
Cc: Ard Biesheuvel <ardb@kernel.org>
Cc: Arnd Bergmann <arnd@arndb.de>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: Andy Lutomirski <luto@kernel.org>
Cc: Kees Cook <keescook@chromium.org>
Cc: Lennart Poettering <mzxreary@0pointer.de>
Cc: Konstantin Ryabitsev <konstantin@linuxfoundation.org>
Cc: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Cc: Theodore Ts'o <tytso@mit.edu>
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2022-03-12 18:00:55 -07:00
..
amba
atomic
avf
bcma
byteorder
can can: dev: reorder struct can_priv members for better packing 2022-01-05 12:09:06 +01:00
ceph libceph: optionally use bounce buffer on recv path in crc mode 2022-02-02 18:50:36 +01:00
clk
comedi
crush
decompress
device
dma
dsa
extcon
firmware Char/Misc and other driver changes for 5.17-rc1 2022-01-14 16:02:28 +01:00
fpga
fsl
gpio
greybus
hsi
i3c
iio
input
irqchip
isdn
lockd nfs: block notification on fs with its own ->lock 2022-01-08 14:42:01 -05:00
mailbox
mdio
mfd We have a couple patches in the framework core this time around but 2022-01-12 17:02:27 -08:00
mlx4
mlx5 net/mlx5: Introduce API for bulk request and release of IRQs 2022-01-06 16:22:52 -08:00
mmc
mtd
mux
net/intel
netfilter netfilter: conntrack: avoid useless indirection during conntrack destruction 2022-01-09 23:30:13 +01:00
netfilter_arp
netfilter_bridge
netfilter_ipv4
netfilter_ipv6
pcs
perf
phy
pinctrl
platform_data linux-watchdog 5.17-rc1 tag 2022-01-17 08:07:57 +02:00
power
qed
raid lib/raid6: Use strict priority ranking for pq gen() benchmarking 2022-01-06 08:37:03 -08:00
regulator regulator: Updates for v5.17 2022-01-11 12:17:45 -08:00
remoteproc
reset
rpmsg
rtc
sched sched: Fix yet more sched_fork() races 2022-02-19 11:11:05 +01:00
soc Rework of the MSI interrupt infrastructure: 2022-01-13 09:05:29 -08:00
soundwire
spi spi: don't include ptp_clock_kernel.h in spi.h 2022-01-07 17:14:30 +00:00
ssb
sunrpc Merge branch 'signal-for-v5.17' of git://git.kernel.org/pub/scm/linux/kernel/git/ebiederm/user-namespace 2022-01-17 05:49:30 +02:00
surface_aggregator
ulpi
unaligned include/linux/unaligned: replace kernel.h with the necessary inclusions 2022-01-20 08:52:53 +02:00
usb usb: roles: fix include/linux/usb/role.h compile issue 2022-01-25 18:30:15 +01:00
8250_pci.h
a.out.h
acct.h
acpi.h cxl for 5.17 2022-01-12 15:57:59 -08:00
acpi_dma.h
acpi_iort.h
acpi_mdio.h
acpi_pmtmr.h
acpi_viot.h
adb.h
adfs_fs.h
adreno-smmu-priv.h
adxl.h
aer.h
agp_backend.h
agpgart.h
ahci-remap.h
ahci_platform.h
aio.h aio: move aio sysctl to aio.c 2022-01-22 08:33:34 +02:00
alarmtimer.h
alcor_pci.h
align.h
altera_jtaguart.h
altera_uart.h
amd-iommu.h
anon_inodes.h
apm-emulation.h
apm_bios.h
apple-gmux.h
apple-mailbox.h
apple_bl.h
arch_topology.h
arm-cci.h
arm-smccc.h
arm_ffa.h
arm_sdei.h
armada-37xx-rwtm-mailbox.h
ascii85.h
asn1.h
asn1_ber_bytecode.h
asn1_decoder.h
asn1_encoder.h
assoc_array.h
assoc_array_priv.h
async.h
async_tx.h
ata.h ata: libata-core: Fix ata_dev_config_cpr() 2022-02-07 22:38:02 +09:00
ata_platform.h
atalk.h
ath9k_platform.h
atm.h
atm_tcp.h
atmdev.h
atmel-isc-media.h
atmel-mci.h
atmel-ssc.h
atmel_pdc.h
atomic.h
attribute_container.h
audit.h
audit_arch.h
auto_dev-ioctl.h
auto_fs.h
auxiliary_bus.h
auxvec.h
average.h
backing-dev-defs.h
backing-dev.h
backlight.h
badblocks.h
balloon_compaction.h
bcd.h
bch.h
bcm47xx_nvram.h
bcm47xx_sprom.h
bcm47xx_wdt.h
bcm963xx_nvram.h
bcm963xx_tag.h
binfmts.h
bio.h Convert xfs/iomap to use folios 2022-01-12 12:51:41 -08:00
bit_spinlock.h
bitfield.h
bitmap.h bitmap: unify find_bit operations 2022-01-15 08:47:31 -08:00
bitops.h include/linux: move for_each_bit() macros from bitops.h to find.h 2022-01-15 08:47:31 -08:00
bitrev.h
bits.h
blk-cgroup.h
blk-crypto-profile.h
blk-crypto.h
blk-integrity.h
blk-mq-pci.h
blk-mq-rdma.h
blk-mq-virtio.h
blk-mq.h block: fix old-style declaration 2022-01-09 10:36:51 -07:00
blk-pm.h
blk_types.h
blkdev.h block: fix surprise removal for drivers calling blk_set_queue_dying 2022-02-17 07:54:03 -07:00
blkpg.h
blktrace_api.h
blockgroup_lock.h
bma150.h
bootconfig.h
bootmem_info.h bootmem: Use page->index instead of page->freelist 2022-01-06 12:27:03 +01:00
bottom_half.h
bpf-cgroup-defs.h
bpf-cgroup.h
bpf-netns.h
bpf.h bpf: Fix ringbuf memory type confusion when passing to helpers 2022-01-19 01:21:46 +01:00
bpf_lirc.h
bpf_local_storage.h
bpf_lsm.h
bpf_trace.h
bpf_types.h
bpf_verifier.h bpf: Generalize check_ctx_reg for reuse with other types 2022-01-19 01:21:24 +01:00
bpfilter.h
bpfptr.h
brcmphy.h
bsearch.h
bsg-lib.h
bsg.h
btf.h
btf_ids.h
btree-128.h
btree-type.h
btree.h
btrfs.h
buffer_head.h
bug.h
build-salt.h
build_bug.h
buildid.h
bvec.h
c2port.h
cache.h
cacheflush.h
cacheinfo.h
capability.h
cb710.h
cc_platform.h
cciss_ioctl.h
ccp.h
cdev.h
cdrom.h
cfag12864b.h
cfi.h
cgroup-defs.h Merge branch 'for-5.17' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/cgroup 2022-01-11 09:14:37 -08:00
cgroup.h
cgroup_rdma.h
cgroup_subsys.h
circ_buf.h
clk-provider.h
clk.h
clkdev.h
clockchips.h
clocksource.h
clocksource_ids.h
cm4000_cs.h
cma.h
cn_proc.h
cnt32_to_63.h
coda.h
compaction.h
compat.h
compiler-clang.h
compiler-gcc.h
compiler-intel.h
compiler-version.h
compiler.h x86/bug: Merge annotate_reachable() into _BUG_FLAGS() asm 2022-02-02 14:41:04 -08:00
compiler_attributes.h
compiler_types.h
completion.h
component.h
configfs.h
connector.h
console.h
console_struct.h
consolemap.h
const.h
container.h
container_of.h
context_tracking.h
context_tracking_state.h
cookie.h
cordic.h
coredump.h fs/coredump: move coredump sysctls into its own file 2022-01-22 08:33:36 +02:00
coresight-pmu.h
coresight-stm.h
coresight.h
count_zeros.h
counter.h
cper.h
cpu.h
cpu_cooling.h
cpu_pm.h
cpu_rmap.h
cpufeature.h
cpufreq.h
cpuhotplug.h random: clear fast pool, crng, and batches in cpuhp bring up 2022-02-21 21:14:21 +01:00
cpuidle.h
cpuidle_haltpoll.h
cpumask.h cpumask: replace cpumask_next_* with cpumask_first_* where appropriate 2022-01-15 08:47:31 -08:00
cpuset.h
crash_core.h
crash_dump.h
crc-ccitt.h
crc-itu-t.h
crc-t10dif.h
crc4.h
crc7.h
crc8.h
crc16.h
crc32.h
crc32c.h
crc32poly.h
crc64.h
cred.h
crypto.h
cs5535.h
ctype.h
cuda.h
damon.h mm/damon: move the implementation of damon_insert_region to damon.h 2022-01-15 16:30:33 +02:00
dasd_mod.h
davinci_emac.h
dax.h
dca.h
dcache.h fs: move dcache sysctls to its own file 2022-01-22 08:33:36 +02:00
dccp.h
debug_locks.h
debugfs.h
debugobjects.h
delay.h
delayacct.h delayacct: track delays from memory compact 2022-01-20 08:52:55 +02:00
delayed_call.h
dev_printk.h
devcoredump.h
devfreq-event.h
devfreq.h
devfreq_cooling.h
device-mapper.h
device.h
device_cgroup.h
devm-helpers.h
devpts_fs.h
dfl.h
digsig.h
dim.h
dio.h
dirent.h
dlm.h
dlm_plock.h
dm-bufio.h
dm-dirty-log.h
dm-io.h
dm-kcopyd.h
dm-region-hash.h
dm9000.h
dma-buf-map.h
dma-buf.h
dma-direct.h
dma-direction.h
dma-fence-array.h
dma-fence-chain.h
dma-fence.h
dma-heap.h
dma-iommu.h
dma-map-ops.h
dma-mapping.h
dma-resv.h
dmaengine.h
dmapool.h
dmar.h
dmi.h
dnotify.h dnotify: move dnotify sysctl to dnotify.c 2022-01-22 08:33:34 +02:00
dns_resolver.h
dqblk_qtree.h
dqblk_v1.h
dqblk_v2.h
drbd.h
drbd_genl.h
drbd_genl_api.h
drbd_limits.h
ds2782_battery.h
dtlk.h
dtpm.h
dw_apb_timer.h
dynamic_debug.h
dynamic_queue_limits.h
earlycpio.h
ecryptfs.h
edac.h
edd.h
eeprom_93cx6.h
eeprom_93xx46.h
efi-bgrt.h
efi.h More ACPI updates for 5.17-rc1 2022-01-18 08:51:51 +02:00
efi_embedded_fw.h
efs_vh.h
eisa.h
elf-fdpic.h
elf-randomize.h
elf.h
elfcore-compat.h fs/binfmt_elf: replace open-coded string copy with get_task_comm 2022-01-20 08:52:53 +02:00
elfcore.h fs/binfmt_elf: replace open-coded string copy with get_task_comm 2022-01-20 08:52:53 +02:00
elfnote-lto.h
elfnote.h
enclosure.h
energy_model.h
entry-common.h
entry-kvm.h
err.h
errname.h
errno.h
error-injection.h
errqueue.h
errseq.h
etherdevice.h
ethtool.h ethtool: Fix link extended state for big endian 2022-01-20 11:30:15 +00:00
ethtool_netlink.h
eventfd.h
eventpoll.h
evm.h
export.h
exportfs.h nfs: block notification on fs with its own ->lock 2022-01-08 14:42:01 -05:00
ext2_fs.h
extable.h
extcon-provider.h
extcon.h
f2fs_fs.h
f75375s.h
falloc.h
fanotify.h inotify: simplify subdirectory registration with register_sysctl() 2022-01-22 08:33:35 +02:00
fault-inject-usercopy.h
fault-inject.h
fb.h Revert "fbdev: Garbage collect fbdev scrolling acceleration, part 1 (from TODO list)" 2022-02-02 15:14:56 +01:00
fbcon.h
fcdevice.h
fcntl.h
fd.h
fddidevice.h
fdtable.h
fec.h
fiemap.h
file.h
fileattr.h
filter.h xdp: Add xdp_do_redirect_frame() for pre-computed xdp_frames 2022-01-05 19:46:32 -08:00
find.h bitmap: unify find_bit operations 2022-01-15 08:47:31 -08:00
fips.h
firewire.h
firmware-map.h
firmware.h
fixp-arith.h
flat.h
flex_proportions.h
font.h
fortify-string.h
freelist.h
freezer.h
frontswap.h frontswap: remove support for multiple ops 2022-01-22 08:33:38 +02:00
fs.h Fix from Christoph Hellwig merging the CONFIG_UNICODE_UTF8_DATA into the 2022-02-01 11:13:24 -08:00
fs_context.h devtmpfs regression fix: reconfigure on each mount 2022-01-17 09:40:29 +02:00
fs_enet_pd.h
fs_parser.h
fs_pin.h
fs_stack.h
fs_struct.h
fs_types.h
fs_uart_pd.h
fscache-cache.h fscache, cachefiles: Display stat of culling events 2022-01-07 13:43:18 +00:00
fscache.h fscache: Add a comment explaining how page-release optimisation works 2022-01-21 21:36:28 +00:00
fscrypt.h
fsi-occ.h
fsi-sbefifo.h
fsi.h
fsl-diu-fb.h
fsl_devices.h
fsl_hypervisor.h
fsl_ifc.h
fsldma.h
fsnotify.h fsnotify: invalidate dcache before IN_DELETE event 2022-01-24 14:16:46 +01:00
fsnotify_backend.h
fsverity.h
ftrace.h
ftrace_irq.h
futex.h
fwnode.h
fwnode_mdio.h
gameport.h
gcd.h
genalloc.h
generic-radix-tree.h
genetlink.h
genhd.h
genl_magic_func.h
genl_magic_struct.h
getcpu.h
gfp.h include/linux/gfp.h: further document GFP_DMA32 2022-01-15 16:30:29 +02:00
glob.h
gnss.h
goldfish.h
gpio-pxa.h
gpio.h
gpio_keys.h
greybus.h
hardirq.h
hash.h hash.h: remove unused define directive 2022-01-20 08:52:54 +02:00
hashtable.h
hdlc.h
hdlcdrv.h
hdmi.h
hid-debug.h
hid-roccat.h
hid-sensor-hub.h
hid-sensor-ids.h
hid.h Merge branch 'for-5.17/core' into for-linus 2022-01-10 09:49:13 +01:00
hidden.h
hiddev.h
hidraw.h
highmem-internal.h
highmem.h
highuid.h
hil.h
hil_mlc.h
hippidevice.h
hmm.h
host1x.h
hp_sdc.h
hpet.h
hrtimer.h
hrtimer_defs.h
htcpld.h
huge_mm.h mm: Add folio_test_pmd_mappable() 2022-01-04 13:15:33 -05:00
hugetlb.h hugetlb: add hugetlb.*.numa_stat file 2022-01-15 16:30:29 +02:00
hugetlb_cgroup.h hugetlb: add hugetlb.*.numa_stat file 2022-01-15 16:30:29 +02:00
hugetlb_inline.h
hw_breakpoint.h
hw_random.h random: pull add_hwgenerator_randomness() declaration into random.h 2022-02-21 21:14:21 +01:00
hwmon-sysfs.h
hwmon-vid.h
hwmon.h
hwspinlock.h
hyperv.h Drivers: hv: vmbus: Rework use of DMA_BIT_MASK(64) 2022-02-07 17:55:30 +00:00
hypervisor.h
i2c-algo-bit.h
i2c-algo-pca.h
i2c-algo-pcf.h
i2c-dev.h
i2c-mux.h
i2c-smbus.h
i2c.h
i8042.h
i8253.h
icmp.h
icmpv6.h
idle_inject.h
idr.h
ieee80211.h
ieee802154.h
if_arp.h
if_bridge.h
if_eql.h
if_ether.h
if_fddi.h
if_hsr.h
if_link.h
if_ltalk.h
if_macvlan.h
if_phonet.h
if_pppol2tp.h
if_pppox.h
if_rmnet.h
if_tap.h
if_team.h
if_tun.h
if_tunnel.h
if_vlan.h net/mlx5e: Use struct_group() for memcpy() region 2022-02-01 20:59:43 -08:00
igmp.h
ihex.h
ima.h
imx-media.h
in.h
in6.h
indirect_call_wrapper.h
inet.h
inet_diag.h
inetdevice.h
init.h
init_ohci1394_dma.h
init_syscalls.h
init_task.h
initrd.h
inotify.h inotify: simplify subdirectory registration with register_sysctl() 2022-01-22 08:33:35 +02:00
input.h
instruction_pointer.h
instrumentation.h
instrumented.h
integrity.h
intel-iommu.h
intel-ish-client-if.h
intel-svm.h
intel_rapl.h
intel_th.h
interconnect-provider.h
interconnect.h
interrupt.h
interval_tree.h
interval_tree_generic.h
io-64-nonatomic-hi-lo.h
io-64-nonatomic-lo-hi.h
io-mapping.h
io-pgtable.h
io.h
io_uring.h
ioam6.h
ioam6_genl.h
ioam6_iptunnel.h
ioasid.h
iocontext.h
iomap.h xfs, iomap: limit individual ioend chain lengths in writeback 2022-01-26 09:19:20 -08:00
iommu-helper.h
iommu.h
iopoll.h
ioport.h
ioprio.h
iova.h
ip.h
ipack.h
ipc.h
ipc_namespace.h
ipmi.h
ipmi_smi.h
ipv6.h icmp: ICMPV6: Examine invoking packet for Segment Route Headers. 2022-01-04 12:17:35 +00:00
ipv6_route.h
irq.h
irq_poll.h
irq_sim.h
irq_work.h
irqbypass.h
irqchip.h
irqdesc.h
irqdomain.h
irqflags.h
irqhandler.h
irqnr.h
irqreturn.h
isa.h
isapnp.h
iscsi_boot_sysfs.h
iscsi_ibft.h
iversion.h
jbd2.h jbd2: refactor wait logic for transaction updates into a common function 2022-02-03 10:57:44 -05:00
jhash.h
jiffies.h
journal-head.h
joystick.h
jump_label.h
jump_label_ratelimit.h
jz4740-adc.h
jz4780-nemc.h
kallsyms.h
kasan-checks.h
kasan-tags.h
kasan.h Merge branch 'akpm' (patches from Andrew) 2022-01-15 20:37:06 +02:00
kbd_diacr.h
kbd_kern.h
kbuild.h
kconfig.h
kcore.h
kcov.h
kcsan-checks.h
kcsan.h
kdb.h
kdebug.h
kdev_t.h
kern_levels.h
kernel-page-flags.h
kernel.h Merge branch 'akpm' (patches from Andrew) 2022-01-20 10:41:01 +02:00
kernel_read_file.h
kernel_stat.h
kernelcapi.h
kernfs.h
kexec.h
key-type.h
key.h
keyboard.h
keyctl.h
kfence.h kfence: make test case compatible with run time set sample interval 2022-02-11 17:55:00 -08:00
kfifo.h
kgdb.h
khugepaged.h
klist.h
kmemleak.h
kmod.h
kmsg_dump.h
kobj_map.h
kobject.h headers/uninline: Uninline single-use function: kobject_has_children() 2022-01-04 14:36:06 +01:00
kobject_ns.h
kprobes.h kprobe: move sysctl_kprobes_optimization to kprobes.c 2022-01-22 08:33:36 +02:00
kref.h
ks0108.h
ks8842.h
ks8851_mll.h
ksm.h
kstrtox.h
kthread.h Merge branch 'akpm' (patches from Andrew) 2022-01-20 10:41:01 +02:00
ktime.h
kvm_dirty_ring.h KVM: Warn if mark_page_dirty() is called without an active vCPU 2022-01-07 10:44:44 -05:00
kvm_host.h KVM/arm64 fixes for 5.17, take #2 2022-02-05 00:58:25 -05:00
kvm_irqfd.h
kvm_para.h
kvm_types.h KVM: Reinstate gfn_to_pfn_cache with invalidation support 2022-01-07 10:44:44 -05:00
l2tp.h
lantiq.h
lapb.h
latencytop.h
lcd.h
lcm.h
led-class-flash.h
led-class-multicolor.h
led-lm3530.h
leds-bd2802.h
leds-lp3944.h
leds-lp3952.h
leds-pca9532.h
leds-regulator.h
leds-ti-lmu-common.h
leds.h
libata.h ata: libata-core: Introduce ATA_HORKAGE_NO_LOG_DIR horkage 2022-02-04 16:44:23 +09:00
libfdt.h
libfdt_env.h
libgcc.h
libnvdimm.h
libps2.h
license.h
limits.h
linear_range.h
linkage.h
linkmode.h
linux_logo.h
lis3lv02d.h
list.h list: introduce list_is_head() helper and re-use it in list.h 2022-01-20 08:52:53 +02:00
list_bl.h
list_lru.h
list_nulls.h
list_sort.h
litex.h
livepatch.h
llc.h
llist.h
local_lock.h
local_lock_internal.h
lockdep.h
lockdep_types.h
lockref.h
log2.h
logic_iomem.h
logic_pio.h
lp.h
lru_cache.h
lsm_audit.h
lsm_hook_defs.h Fix NULL pointer crash in LSM via Ceph, from Vivek Goyal <vgoyal@redhat.com>. 2022-01-29 08:52:27 +02:00
lsm_hooks.h
lz4.h
lzo.h
mailbox_client.h
mailbox_controller.h
maple.h
marvell_phy.h
math.h
math64.h
mbcache.h
mbus.h
mc6821.h
mc146818rtc.h rtc: mc146818-lib: fix signedness bug in mc146818_get_time() 2022-01-16 23:34:43 +01:00
mcb.h
mdev.h
mdio-bitbang.h
mdio-gpio.h
mdio-mux.h
mdio.h net: mdio: add helpers to extract clause 45 regad and devad fields 2022-01-05 11:22:17 +00:00
mei_cl_bus.h
mem_encrypt.h
memblock.h memblock: Remove #ifdef __KERNEL__ from memblock.h 2022-01-11 12:36:47 +02:00
memcontrol.h mm: memcg: synchronize objcg lists with a dedicated spinlock 2022-02-11 17:55:00 -08:00
memfd.h
memory.h
memory_hotplug.h
mempolicy.h mm/mempolicy: add set_mempolicy_home_node syscall 2022-01-15 16:30:30 +02:00
mempool.h
memregion.h
memremap.h Merge branch 'akpm' (patches from Andrew) 2022-01-15 20:37:06 +02:00
memstick.h
mhi.h
micrel_phy.h
microchipphy.h
migrate.h mm/migrate.c: rework migration_entry_wait() to not take a pageref 2022-01-22 08:33:34 +02:00
migrate_mode.h
mii.h
mii_timestamper.h
min_heap.h
minmax.h
misc_cgroup.h
miscdevice.h
mISDNdsp.h
mISDNhw.h
mISDNif.h
mm.h mm, kasan: use compare-exchange operation to set KASAN page tag 2022-01-30 09:56:58 +02:00
mm_inline.h mm: move tlb_flush_pending inline helpers to mm_inline.h 2022-01-15 16:30:27 +02:00
mm_types.h mm: page->mapping folio->mapping should have the same offset 2022-01-30 09:56:58 +02:00
mm_types_task.h
mman.h
mmap_lock.h
mmdebug.h
mmiotrace.h
mmu_context.h
mmu_notifier.h
mmzone.h mm_zone: add function to check if managed dma zone exists 2022-01-15 16:30:29 +02:00
mnt_idmapping.h
mnt_namespace.h
mod_devicetable.h
module.h Merge branch 'modules-next' of git://git.kernel.org/pub/scm/linux/kernel/git/mcgrof/linux 2022-01-17 07:32:51 +02:00
module_signature.h
moduleloader.h
moduleparam.h
most.h
mount.h fs: move namespace sysctls and declare fs base directory 2022-01-22 08:33:36 +02:00
moxtet.h
mpage.h
mpi.h
mpls.h
mpls_iptunnel.h
mroute.h
mroute6.h
mroute_base.h
msdos_fs.h
msdos_partition.h
msg.h
msi.h
mtio.h
mutex.h
mv643xx.h
mv643xx_eth.h
mv643xx_i2c.h
mvebu-pmsu.h
mxm-wmi.h
namei.h
nd.h
ndctl.h
net.h
netdev_features.h
netdevice.h net_sched: add __rcu annotation to netdev->qdisc 2022-02-14 13:36:36 +00:00
netfilter.h netfilter: make function op structures const 2022-01-09 23:30:13 +01:00
netfilter_bridge.h
netfilter_defs.h
netfilter_ipv4.h
netfilter_ipv6.h
netfilter_netdev.h netfilter: egress: avoid a lockdep splat 2022-01-09 23:35:16 +01:00
netfs.h netfs, cachefiles: Add a method to query presence of data in the cache 2022-02-01 10:29:18 -06:00
netlink.h
netpoll.h
nfs.h NFSD: Deprecate NFS_OFFSET_MAX 2022-02-09 09:24:40 -05:00
nfs3.h
nfs4.h
nfs_fs.h NFS: Avoid duplicate uncached readdir calls on eof 2022-02-02 10:47:33 -05:00
nfs_fs_i.h
nfs_fs_sb.h NFS Client Updates for Linux 5.17 2022-01-25 20:16:03 +02:00
nfs_iostat.h
nfs_page.h
nfs_ssc.h
nfs_xdr.h NFSv4.1 query for fs_location attr on a new file system 2022-01-13 09:30:48 -05:00
nfsacl.h
nitro_enclaves.h
nl802154.h
nls.h
nmi.h
node.h
nodemask.h
nospec.h
notifier.h
ns_common.h
nsc_gpio.h
nsproxy.h
ntb.h
ntb_transport.h
nubus.h
numa.h
nvme-fc-driver.h
nvme-fc.h
nvme-rdma.h
nvme-tcp.h
nvme.h
nvmem-consumer.h
nvmem-provider.h
nvram.h
objagg.h
objtool.h
of.h of: property: define of_property_read_u{8,16,32,64}_array() unconditionally 2022-01-20 12:55:26 -06:00
of_address.h
of_clk.h
of_device.h
of_dma.h
of_fdt.h Merge branch 'dt/linus' into dt/next 2022-01-12 10:14:09 -06:00
of_gpio.h
of_graph.h
of_iommu.h
of_irq.h
of_mdio.h
of_net.h
of_pci.h
of_pdt.h
of_platform.h
of_reserved_mem.h
oid_registry.h
olpc-ec.h
omap-dma.h
omap-gpmc.h
omap-iommu.h
omap-mailbox.h
omapfb.h
once.h
once_lite.h
oom.h
openvswitch.h
osq_lock.h
overflow.h
packing.h
padata.h
page-flags-layout.h
page-flags.h slab changes for 5.17 - part 2 2022-01-18 06:40:47 +02:00
page-isolation.h
page_counter.h
page_ext.h
page_idle.h mm: make some vars and functions static or __init 2022-01-15 16:30:31 +02:00
page_owner.h
page_ref.h
page_reporting.h
page_table_check.h mm/page_table_check: check entries at pmd levels 2022-02-04 09:25:04 -08:00
pageblock-flags.h
pagemap.h Convert much of the page cache to use folios 2022-01-12 12:37:02 -08:00
pagevec.h pagevec: Initialise folio_batch->percpu_pvec_drained 2022-01-13 16:50:50 -05:00
pagewalk.h
panic.h
panic_notifier.h
parman.h
parport.h
parport_pc.h
parser.h
part_stat.h
pata_arasan_cf_data.h
patchkey.h
path.h
pch_dma.h
pci-acpi.h
pci-ats.h
pci-dma-compat.h
pci-ecam.h
pci-ep-cfs.h
pci-epc.h
pci-epf.h
pci-p2pdma.h
pci.h pci-v5.17-changes 2022-01-16 08:08:11 +02:00
pci_hotplug.h
pci_ids.h pci-v5.17-changes 2022-01-16 08:08:11 +02:00
pcs-lynx.h
pda_power.h
pe.h
percpu-defs.h
percpu-refcount.h
percpu-rwsem.h
percpu.h mm: percpu: add generic pcpu_populate_pte() function 2022-01-20 08:52:52 +02:00
percpu_counter.h
perf_event.h perf: Fix perf_event_read_local() time 2022-01-18 12:09:47 +01:00
perf_regs.h
personality.h
pfn.h
pfn_t.h
pgtable.h mm/pgtable: define pte_index so that preprocessor could recognize it 2022-02-04 09:25:05 -08:00
phonet.h
phy.h
phy_fixed.h
phy_led_triggers.h
phylink.h
pid.h
pid_namespace.h pid: Introduce helper task_is_in_init_pid_ns() 2022-01-26 18:57:09 -08:00
pim.h
pipe_fs_i.h fs: move pipe sysctls to is own file 2022-01-22 08:33:36 +02:00
pkeys.h
pktcdvd.h pktcdvd: convert to use attribute groups 2022-01-03 21:24:34 -07:00
pl320-ipc.h
platform_device.h
platform_profile.h
pldmfw.h
plist.h
pm-trace.h
pm.h PM: runtime: Add DEFINE_RUNTIME_DEV_PM_OPS() macro 2022-01-12 19:59:05 +01:00
pm_clock.h
pm_domain.h
pm_opp.h
pm_qos.h
pm_runtime.h PM: runtime: Add EXPORT[_GPL]_RUNTIME_DEV_PM_OPS macros 2022-01-12 19:59:05 +01:00
pm_wakeirq.h
pm_wakeup.h
pmbus.h
pmu.h
pnp.h
poison.h
poll.h eventpoll: simplify sysctl declaration with register_sysctl() 2022-01-22 08:33:35 +02:00
posix-clock.h
posix-timers.h
posix_acl.h
posix_acl_xattr.h
power_supply.h platform-drivers-x86 for v5.17-1 2022-01-11 11:26:57 -08:00
powercap.h
ppp-comp.h
ppp_channel.h
ppp_defs.h
pps_kernel.h
pr.h
prandom.h
preempt.h
prefetch.h
prime_numbers.h
printk.h printk: fix build warning when CONFIG_PRINTK=n 2022-01-22 08:33:36 +02:00
prmt.h
proc_fs.h proc: remove PDE_DATA() completely 2022-01-22 08:33:37 +02:00
proc_ns.h
processor.h
profile.h exit: Remove profile_handoff_task 2022-01-08 12:43:57 -06:00
projid.h
property.h Char/Misc and other driver changes for 5.17-rc1 2022-01-14 16:02:28 +01:00
pruss_driver.h
psci.h
pseudo_fs.h
psi.h psi: fix "no previous prototype" warnings when CONFIG_CGROUPS=n 2022-01-30 09:56:58 +02:00
psi_types.h psi: Fix uaf issue when psi trigger is destroyed while being polled 2022-01-18 12:09:57 +01:00
psp-sev.h
psp-tee.h
pstore.h
pstore_blk.h
pstore_ram.h
pstore_zone.h
ptdump.h
pti.h
ptp_classify.h
ptp_clock_kernel.h net: fix SOF_TIMESTAMPING_BIND_PHC to work with multiple sockets 2022-01-06 12:18:08 +00:00
ptp_kvm.h
ptp_pch.h
ptr_ring.h
ptrace.h
purgatory.h
pvclock_gtod.h
pwm.h
pwm_backlight.h
pxa2xx_ssp.h
pxa168_eth.h
qcom-geni-se.h
qcom_scm.h
qnx6_fs.h
quota.h quota: cleanup double word in comment 2022-01-24 14:45:02 +01:00
quotaops.h
radix-tree.h
raid_class.h
ramfs.h
random.h random: block in /dev/urandom 2022-03-12 18:00:55 -07:00
randomize_kstack.h
range.h
ras.h
ratelimit.h
ratelimit_types.h
rational.h
rbtree.h
rbtree_augmented.h
rbtree_latch.h
rbtree_types.h
rcu_node_tree.h
rcu_segcblist.h
rcu_sync.h
rculist.h
rculist_bl.h
rculist_nulls.h
rcupdate.h
rcupdate_trace.h
rcupdate_wait.h
rcutiny.h
rcutree.h
rcuwait.h
reboot-mode.h
reboot.h
reciprocal_div.h
ref_tracker.h lib/stackdepot: allow optional init and stack_table allocation by kvmalloc() 2022-01-22 08:33:37 +02:00
refcount.h
regmap.h
regset.h
relay.h
remoteproc.h
resctrl.h
reset-controller.h
reset.h
resource.h
resource_ext.h
restart_block.h
rfkill.h
rhashtable-types.h
rhashtable.h
ring_buffer.h
rio.h
rio_drv.h
rio_ids.h
rio_regs.h
rmap.h
rmi.h
rndis.h
rodata_test.h
root_dev.h
rpmsg.h
rslib.h
rtc.h
rtmutex.h
rtnetlink.h
rtsx_common.h
rtsx_pci.h
rtsx_usb.h
rwbase_rt.h
rwlock.h locking/rwlocks: introduce write_lock_nested 2022-01-22 08:33:37 +02:00
rwlock_api_smp.h locking/rwlocks: introduce write_lock_nested 2022-01-22 08:33:37 +02:00
rwlock_rt.h locking/rwlocks: introduce write_lock_nested 2022-01-22 08:33:37 +02:00
rwlock_types.h
rwsem.h
s3c_adc_battery.h
sbitmap.h blk-mq: fix tag_get wait task can't be awakened 2022-01-13 12:52:14 -07:00
scatterlist.h
scc.h
sched.h Revert "module, async: async_synchronize_full() on module init iff async is used" 2022-02-03 11:20:34 -08:00
sched_clock.h
scmi_protocol.h
scpi_protocol.h
screen_info.h
scs.h
sctp.h
scx200.h
scx200_gpio.h
seccomp.h
secretmem.h
securebits.h
security.h
sed-opal.h
seg6.h
seg6_genl.h
seg6_hmac.h
seg6_iptunnel.h
seg6_local.h
selection.h
sem.h
semaphore.h
seq_buf.h
seq_file.h proc: remove PDE_DATA() completely 2022-01-22 08:33:37 +02:00
seq_file_net.h
seqlock.h
serdev.h
serial.h
serial_8250.h
serial_bcm63xx.h
serial_core.h
serial_max3100.h
serial_s3c.h
serial_sci.h
serio.h
set_memory.h
sfp.h
sh_clk.h
sh_dma.h
sh_eth.h
sh_intc.h
sh_timer.h
shdma-base.h
shm.h
shmem_fs.h mm: simplify try_to_unuse 2022-01-22 08:33:38 +02:00
shrinker.h
signal.h
signal_types.h
signalfd.h
siox.h
siphash.h
sizes.h
skb_array.h
skbuff.h net: socket: rename SKB_DROP_REASON_SOCKET_FILTER 2022-01-27 08:45:13 -08:00
skmsg.h
slab.h Kbuild updates for v5.17 2022-01-19 11:15:19 +02:00
slab_def.h mm: Convert struct page to struct slab in functions used by other subsystems 2022-01-06 12:26:13 +01:00
slimbus.h
slub_def.h mm: Convert struct page to struct slab in functions used by other subsystems 2022-01-06 12:26:13 +01:00
sm501-regs.h
sm501.h
smc91x.h
smc911x.h
smp.h
smp_types.h
smpboot.h
smsc911x.h
smscphy.h
sock_diag.h
socket.h
sockptr.h
sonet.h
sony-laptop.h
sonypi.h
sort.h
sound.h
soundcard.h
spinlock.h
spinlock_api_smp.h
spinlock_api_up.h locking/rwlocks: introduce write_lock_nested 2022-01-22 08:33:37 +02:00
spinlock_rt.h
spinlock_types.h
spinlock_types_raw.h
spinlock_types_up.h
spinlock_up.h
splice.h
spmi.h
sram.h
srcu.h
srcutiny.h
srcutree.h
ssbi.h
stackdepot.h lib/stackdepot: allow optional init and stack_table allocation by kvmalloc() 2022-01-22 08:33:37 +02:00
stackleak.h stackleak: move stack_erasing sysctl to stackleak.c 2022-01-22 08:33:35 +02:00
stackprotector.h
stacktrace.h
start_kernel.h
stat.h
statfs.h
static_call.h
static_call_types.h
static_key.h
stdarg.h
stddef.h
stm.h
stmmac.h
stmp3xxx_rtc_wdt.h
stmp_device.h
stop_machine.h
string.h
string_helpers.h
stringhash.h
stringify.h
sungem_phy.h
sunserialcore.h
sunxi-rsb.h
superhyway.h
surface_acpi_notify.h
suspend.h PM: s2idle: ACPI: Fix wakeup interrupts handling 2022-02-07 21:02:31 +01:00
svga.h
sw842.h
swab.h
swait.h
swap.h mm: remove the total_mapcount argument from page_trans_huge_mapcount() 2022-01-15 16:30:28 +02:00
swap_cgroup.h
swap_slots.h
swapfile.h mm: mark swap_lock and swap_active_head static 2022-01-22 08:33:38 +02:00
swapops.h
swiotlb.h
switchtec.h ntb_hw_switchtec: Remove code for disabling ID protection 2022-01-11 15:38:59 -05:00
sxgbe_platform.h
sync_core.h
sync_file.h
synclink.h
sys.h
sys_soc.h
syscall_user_dispatch.h
syscalls.h mm/mempolicy: wire up syscall set_mempolicy_home_node 2022-01-15 16:30:30 +02:00
syscore_ops.h
sysctl.h include/linux/sysctl.h: fix register_sysctl_mount_point() return type 2022-01-30 09:56:58 +02:00
sysfb.h
sysfs.h
syslog.h
sysrq.h
sysv_fs.h
t10-pi.h
task_io_accounting.h
task_io_accounting_ops.h
task_work.h
taskstats_kern.h
tboot.h
tc.h
tca6416_keypad.h
tcp.h
tee_drv.h ARM: SoC driver updates for v5.17 2022-01-10 08:13:52 -08:00
textsearch.h
textsearch_fsm.h
tfrc.h
thermal.h
thread_info.h
threads.h
thunderbolt.h
ti-emif-sram.h
ti_wilink_st.h
tick.h
tifm.h
timb_dma.h
timb_gpio.h
time.h
time32.h
time64.h
time_namespace.h
timecounter.h
timekeeper_internal.h
timekeeping.h
timer.h
timerfd.h
timeriomem-rng.h
timerqueue.h
timex.h
tnum.h
topology.h
torture.h
toshiba.h
tpm.h tpm: Add Upgrade/Reduced mode support for TPM2 modules 2022-01-09 00:18:47 +02:00
tpm_command.h
tpm_eventlog.h
trace.h
trace_clock.h
trace_events.h tracing: Account bottom half disabled sections. 2022-01-13 16:23:04 -05:00
trace_recursion.h
trace_seq.h
tracefs.h
tracehook.h ptrace: Remove unused regs argument from ptrace_report_syscall 2022-01-08 12:43:58 -06:00
tracepoint-defs.h
tracepoint.h
transport_class.h
ts-nbus.h
tsacct_kern.h
tty.h
tty_buffer.h
tty_driver.h
tty_flip.h
tty_ldisc.h
tty_port.h
typecheck.h
types.h
u64_stats_sync.h
uacce.h
uaccess.h
ucb1400.h
ucs2_string.h
udp.h
uidgid.h
uio.h dax + libnvdimm for v5.17 2022-01-12 15:46:11 -08:00
uio_driver.h
umh.h
unicode.h
units.h
uprobes.h
usb.h
usb_usual.h
usbdevice_fs.h
user-return-notifier.h
user.h
user_namespace.h
userfaultfd_k.h
usermode_driver.h
util_macros.h
uts.h
utsname.h
uuid.h
vbox_utils.h
vdpa.h vdpa: Avoid taking cf_mutex lock on get status 2022-01-14 18:50:54 -05:00
verification.h
vermagic.h
vexpress.h
vfio.h
vfio_pci_core.h
vfs.h
vga_switcheroo.h
vgaarb.h
vhost_iotlb.h
via-core.h
via-gpio.h
via.h
via_i2c.h
videodev2.h
virtio.h virtio: wrap config->reset calls 2022-01-14 18:50:52 -05:00
virtio_byteorder.h
virtio_caif.h
virtio_config.h
virtio_console.h
virtio_dma_buf.h
virtio_net.h
virtio_pci_legacy.h
virtio_pci_modern.h
virtio_ring.h
virtio_vsock.h
visorbus.h
vlynq.h
vm_event_item.h mm/vmstat: add events for THP max_ptes_* exceeds 2022-01-15 16:30:29 +02:00
vmacache.h
vmalloc.h mm: defer kmemleak object creation of module_alloc() 2022-01-15 16:30:25 +02:00
vme.h
vmpressure.h
vmstat.h
vmw_vmci_api.h
vmw_vmci_defs.h
vringh.h
vt.h
vt_buffer.h
vt_kern.h
vtime.h
w1-gpio.h
w1.h
wait.h
wait_bit.h
watch_queue.h
watchdog.h
win_minmax.h
wireless.h
wkup_m3_ipc.h
wl12xx.h
wm97xx.h
wmi.h
workqueue.h
writeback.h vfs, fscache: Implement pinning of cache usage for writeback 2022-01-07 09:22:19 +00:00
ww_mutex.h
wwan.h
xarray.h XArray: Add xas_advance() 2022-01-08 00:28:41 -05:00
xattr.h
xxhash.h
xz.h
yam.h
z2_battery.h
zconf.h
zlib.h
zorro.h
zpool.h
zsmalloc.h
zstd.h
zstd_errors.h
zstd_lib.h
zutil.h