android_kernel_msm-6.1_noth.../include/linux
Alexei Starovoitov 51c39bb1d5 bpf: Introduce function-by-function verification
New llvm and old llvm with libbpf help produce BTF that distinguish global and
static functions. Unlike arguments of static function the arguments of global
functions cannot be removed or optimized away by llvm. The compiler has to use
exactly the arguments specified in a function prototype. The argument type
information allows the verifier validate each global function independently.
For now only supported argument types are pointer to context and scalars. In
the future pointers to structures, sizes, pointer to packet data can be
supported as well. Consider the following example:

static int f1(int ...)
{
  ...
}

int f3(int b);

int f2(int a)
{
  f1(a) + f3(a);
}

int f3(int b)
{
  ...
}

int main(...)
{
  f1(...) + f2(...) + f3(...);
}

The verifier will start its safety checks from the first global function f2().
It will recursively descend into f1() because it's static. Then it will check
that arguments match for the f3() invocation inside f2(). It will not descend
into f3(). It will finish f2() that has to be successfully verified for all
possible values of 'a'. Then it will proceed with f3(). That function also has
to be safe for all possible values of 'b'. Then it will start subprog 0 (which
is main() function). It will recursively descend into f1() and will skip full
check of f2() and f3(), since they are global. The order of processing global
functions doesn't affect safety, since all global functions must be proven safe
based on their arguments only.

Such function by function verification can drastically improve speed of the
verification and reduce complexity.

Note that the stack limit of 512 still applies to the call chain regardless whether
functions were static or global. The nested level of 8 also still applies. The
same recursion prevention checks are in place as well.

The type information and static/global kind is preserved after the verification
hence in the above example global function f2() and f3() can be replaced later
by equivalent functions with the same types that are loaded and verified later
without affecting safety of this main() program. Such replacement (re-linking)
of global functions is a subject of future patches.

Signed-off-by: Alexei Starovoitov <ast@kernel.org>
Signed-off-by: Daniel Borkmann <daniel@iogearbox.net>
Acked-by: Song Liu <songliubraving@fb.com>
Link: https://lore.kernel.org/bpf/20200110064124.1760511-3-ast@kernel.org
2020-01-10 17:20:07 +01:00
..
amba
avf
bcma
byteorder
can Merge git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net 2019-11-16 21:51:42 -08:00
ceph libceph, rbd, ceph: convert to use the new mount API 2019-11-27 22:28:37 +01:00
clk Merge branches 'clk-gpio-flags', 'clk-tegra', 'clk-rockchip', 'clk-sprd' and 'clk-pxa' into clk-next 2019-11-27 08:15:00 -08:00
crush
decompress
dma dmaengine: sprd: Add wrap address support for link-list mode 2019-11-14 16:03:35 +05:30
dsa net: dsa: Make deferred_xmit private to sja1105 2020-01-05 15:13:13 -08:00
extcon
firmware ARM: SoC-related driver updates 2019-12-05 11:43:31 -08:00
fpga
fsl enetc: Make MDIO accessors more generic and export to include/linux/fsl 2020-01-05 23:22:32 -08:00
gpio Merge branch 'regulator-5.5' into regulator-next 2019-11-22 19:56:20 +00:00
greybus
hsi
i3c
iio iio: imu: adis: assign value only if return code zero in read funcs 2019-11-03 10:47:42 +00:00
input
irqchip Merge branch 'irq-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip 2019-12-03 09:29:50 -08:00
isdn
lockd lockd: remove __KERNEL__ ifdefs 2019-11-12 11:43:29 -05:00
mailbox
mfd ARM: SoC-related driver updates 2019-12-05 11:43:31 -08:00
mlx4
mlx5 RDMA subsystem updates for 5.5 2019-11-27 10:17:28 -08:00
mmc brcmfmac: add support for BCM4359 SDIO chipset 2019-12-18 21:07:42 +02:00
mtd mtd: spi-nor: Set default Quad Enable method for ISSI flashes 2019-11-11 20:42:55 +02:00
mux
netfilter
netfilter_arp
netfilter_bridge
netfilter_ipv4
netfilter_ipv6
perf
phy phy: add PHY_MODE_LVDS 2019-10-31 16:54:00 +05:30
pinctrl
platform_data bus: ti-sysc: Fix missing force mstandby quirk handling 2019-12-10 07:18:21 -08:00
power ARM: OMAP2+: SmartReflex: add omap_sr_pdata definition 2019-11-13 11:33:53 +01:00
qed
raid
regulator regulator: ab8500: Remove SYSCLKREQ from enum ab8505_regulator_id 2019-11-07 13:10:08 +00:00
remoteproc
reset
rpmsg
rtc
sched cpufreq: Avoid leaving stale IRQ work items during CPU offline 2019-12-12 17:59:43 +01:00
soc ARM: SoC-related driver updates 2019-12-05 11:43:31 -08:00
soundwire soundwire: remove bitfield for unique_id, use u8 2019-11-09 16:46:56 +05:30
spi spi: document CS setup, hold & inactive times in header 2019-10-23 17:48:57 +01:00
ssb
sunrpc This is a relatively quiet cycle for nfsd, mainly various bugfixes. 2019-12-07 16:56:00 -08:00
ulpi
unaligned
usb netdev: pass the stuck queue to the timeout handler 2019-12-12 21:38:57 -08:00
wimax
8250_pci.h
a.out.h
acct.h
acpi.h
acpi_dma.h
acpi_iort.h
acpi_pmtmr.h
adb.h
adfs_fs.h
adxl.h
aer.h
agp_backend.h
agpgart.h agp: move AGPGART_MINOR to include/linux/miscdevice.h 2019-12-04 13:32:45 +10:00
ahci-remap.h
ahci_platform.h ata: libahci_platform: Export again ahci_platform_<en/dis>able_phys() 2019-12-25 20:47:19 -07:00
aio.h
alarmtimer.h
alcor_pci.h
altera_jtaguart.h
altera_uart.h
amd-iommu.h
anon_inodes.h
apm-emulation.h
apm_bios.h
apple-gmux.h
apple_bl.h
arch_topology.h cpu-topology: declare parse_acpi_topology in <linux/arch_topology.h> 2019-11-14 12:31:00 +08:00
arm-cci.h
arm-smccc.h arm/arm64: Provide a wrapper for SMCCC 1.1 calls 2019-10-21 19:20:30 +01:00
arm_sdei.h
armada-37xx-rwtm-mailbox.h
ascii85.h
asn1.h
asn1_ber_bytecode.h
asn1_decoder.h
assoc_array.h
assoc_array_priv.h
async.h
async_tx.h
ata.h
ata_platform.h
atalk.h
ath9k_platform.h
atm.h
atm_suni.h
atm_tcp.h
atmdev.h
atmel-mci.h
atmel-ssc.h
atmel_pdc.h
atomic-fallback.h
atomic.h
attribute_container.h
audit.h Revert "bpf: Emit audit messages upon successful prog load and unload" 2019-11-23 09:56:02 -08:00
auto_dev-ioctl.h
auto_fs.h
auxvec.h
average.h
b1pcmcia.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
bit_spinlock.h
bitfield.h
bitmap.h lib/bitmap: introduce bitmap_replace() helper 2019-12-04 19:44:14 -08:00
bitops.h bitops: introduce the for_each_set_clump8 macro 2019-12-04 19:44:12 -08:00
bitrev.h
bits.h
blk-cgroup.h blk-cgroup: remove blkcg_drain_queue 2019-12-12 09:26:55 -07:00
blk-mq-pci.h
blk-mq-rdma.h
blk-mq-virtio.h
blk-mq.h blk-mq: Delete blk_mq_has_free_tags() and blk_mq_can_queue() 2019-11-13 12:50:38 -07:00
blk-pm.h
blk_types.h block: add iostat counters for flush requests 2019-11-21 09:06:47 -07:00
blkdev.h block: don't handle bio based drivers in blk_revalidate_disk_zones 2019-12-03 08:51:25 -07:00
blkpg.h
blktrace_api.h
blockgroup_lock.h
bma150.h
bottom_half.h
bpf-cgroup.h Merge git://git.kernel.org/pub/scm/linux/kernel/git/bpf/bpf-next 2019-12-27 14:20:10 -08:00
bpf.h bpf: Introduce function-by-function verification 2020-01-10 17:20:07 +01:00
bpf_lirc.h
bpf_trace.h
bpf_types.h bpf: Introduce BPF_MAP_TYPE_STRUCT_OPS 2020-01-09 08:46:18 -08:00
bpf_verifier.h bpf: Introduce function-by-function verification 2020-01-10 17:20:07 +01:00
bpfilter.h
brcmphy.h net: phy: broadcom: add 1000Base-X support for BCM54616S 2019-10-23 20:42:52 -07:00
bsearch.h lib/bsearch: Use generic type for comparator function 2019-11-14 13:15:11 -05:00
bsg-lib.h
bsg.h
btf.h bpf: Introduce BPF_MAP_TYPE_STRUCT_OPS 2020-01-09 08:46:18 -08:00
btree-128.h
btree-type.h
btree.h
btrfs.h
buffer_head.h
bug.h
build-salt.h
build_bug.h linux/build_bug.h: change type to int 2019-12-04 19:44:12 -08:00
bvec.h block: optimise bvec_iter_advance() 2019-12-03 07:36:38 -07:00
c2port.h
cache.h
cacheinfo.h
capability.h
cb710.h
cciss_ioctl.h
ccp.h
cdev.h
cdrom.h
cfag12864b.h
cgroup-defs.h cgroup: use cgrp->kn->id as the cgroup ID 2019-11-12 08:18:04 -08:00
cgroup.h cgroup: use cgrp->kn->id as the cgroup ID 2019-11-12 08:18:04 -08:00
cgroup_rdma.h
cgroup_subsys.h
circ_buf.h
cleancache.h
clk-provider.h clk: Add API to get index of the clock parent 2019-11-11 13:59:35 +01:00
clk.h
clkdev.h
clock_cooling.h
clockchips.h
clocksource.h
cm4000_cs.h
cma.h
cmdline-parser.h
cn_proc.h
cnt32_to_63.h
coda.h
compaction.h
compat.h y2038: syscall implementation cleanups 2019-12-01 14:00:59 -08:00
compiler-clang.h
compiler-gcc.h
compiler-intel.h
compiler.h
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
context_tracking.h sched/vtime: Rename vtime_accounting_cpu_enabled() to vtime_accounting_enabled_this_cpu() 2019-10-29 10:01:14 +01:00
context_tracking_state.h context_tracking: Check static key on context_tracking_enabled_*cpu() 2019-10-29 10:01:16 +01:00
cordic.h
coredump.h
coresight-pmu.h
coresight-stm.h
coresight.h coresight: etm4x: Save/restore state across CPU low power states 2019-11-04 21:57:51 +01:00
count_zeros.h
counter.h
counter_enum.h
cper.h
cpu.h Merge branch 'pm-cpuidle' 2019-11-26 10:26:26 +01:00
cpu_cooling.h thermal: cpu_cooling: Reorder the header file 2019-11-07 07:00:26 +01:00
cpu_pm.h
cpu_rmap.h
cpufeature.h
cpufreq.h cpufreq: Avoid leaving stale IRQ work items during CPU offline 2019-12-12 17:59:43 +01:00
cpuhotplug.h Merge branch 'x86-hyperv-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip 2019-11-26 09:43:34 -08:00
cpuidle.h cpuidle: Drop disabled field from struct cpuidle_state 2019-11-29 11:48:39 +01:00
cpuidle_haltpoll.h
cpumask.h
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 crypto: ablkcipher - remove deprecated and unused ablkcipher support 2019-11-17 09:02:49 +08:00
cryptohash.h
cs5535.h
ctype.h
cuda.h
cyclades.h
davinci_emac.h
dax.h
dca.h
dcache.h fs/namei.c: pull positivity check into follow_managed() 2019-11-15 13:49:04 -05:00
dccp.h
dcookies.h
debug_locks.h
debugfs.h debugfs: Fix !DEBUG_FS debugfs_create_automount 2019-11-21 14:28:32 +01:00
debugobjects.h
delay.h
delayacct.h
delayed_call.h
devcoredump.h
devfreq-event.h
devfreq.h PM / devfreq: Use PM QoS for sysfs min/max_freq 2019-12-09 12:19:16 +09:00
devfreq_cooling.h
device-mapper.h - Fix DM core to disallow stacking request-based DM on partitions. 2019-11-25 11:53:26 -08:00
device.h devtmpfs: use do_mount() instead of ksys_mount() 2019-12-12 14:49:57 +01:00
device_cgroup.h
devpts_fs.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.h dma-buf: change DMA-buf locking convention v3 2019-10-24 09:18:09 +02:00
dma-contiguous.h
dma-debug.h
dma-direct.h dma-mapping: treat dev->bus_dma_mask as a DMA limit 2019-11-21 18:14:35 +01:00
dma-direction.h
dma-fence-array.h
dma-fence-chain.h
dma-fence.h
dma-iommu.h
dma-mapping.h dma-mapping updates for 5.5-rc1 2019-11-28 11:16:43 -08:00
dma-noncoherent.h dma-mapping: drop the dev argument to arch_sync_dma_for_* 2019-11-20 20:31:38 +01:00
dma-resv.h
dmaengine.h
dmapool.h
dmar.h iommu/vt-d: Turn off translations at shutdown 2019-11-11 16:07:13 +01:00
dmi.h firmware: dmi: Add dmi_memdev_handle 2019-12-03 11:20:37 +01:00
dnotify.h
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
dw_apb_timer.h
dynamic_debug.h dynamic_debug: provide dynamic_hex_dump stub 2019-10-22 12:54:44 -07:00
dynamic_queue_limits.h
earlycpio.h
ecryptfs.h
edac.h EDAC: Remove misleading comment in struct edac_raw_error_desc 2019-11-10 12:40:14 +01:00
edd.h
eeprom_93cx6.h
eeprom_93xx46.h
efi-bgrt.h
efi.h efi: Fix efi_loaded_image_t::unload type 2019-12-08 12:42:19 +01:00
efs_vh.h
eisa.h
elevator.h
elf-fdpic.h
elf-randomize.h
elf.h
elfcore-compat.h
elfcore.h
elfnote.h
enclosure.h
energy_model.h PM / EM: Declare EM data types unconditionally 2019-11-07 07:02:40 +01:00
err.h
errname.h
errno.h
error-injection.h
errqueue.h
errseq.h
etherdevice.h
ethtool.h
ethtool_netlink.h ethtool: provide link mode information with LINKMODES_GET request 2019-12-27 16:40:02 -08:00
eventfd.h
eventpoll.h
evm.h
export.h Modules updates for v5.5 2019-12-05 12:27:16 -08:00
exportfs.h kernfs: implement custom exportfs ops and fid type 2019-11-12 08:18:04 -08:00
ext2_fs.h
extable.h
extcon-provider.h
extcon.h
f2fs_fs.h
f75375s.h
falloc.h New code for 5.5: 2019-12-02 14:46:22 -08:00
fanotify.h
fault-inject.h
fb.h
fbcon.h
fcdevice.h
fcntl.h
fd.h
fddidevice.h
fdtable.h
fec.h
file.h
filter.h bpf: tcp: Support tcp_congestion_ops in bpf 2020-01-09 08:46:18 -08:00
fips.h
firewire.h
firmware-map.h
firmware.h
fixp-arith.h
flat.h
flex_proportions.h
font.h
frame.h
freezer.h
frontswap.h
fs.h New code for 5.5: 2019-12-02 14:46:22 -08:00
fs_context.h
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.h
fscrypt.h fscrypt: add support for IV_INO_LBLK_64 policies 2019-11-06 12:34:36 -08:00
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_backend.h
fsverity.h
ftrace.h This contains 3 changes: 2019-12-11 12:22:38 -08:00
ftrace_irq.h
futex.h futex: Add mutex around futex exit 2019-11-20 09:40:10 +01:00
fwnode.h Driver core patches for 5.5-rc1 2019-11-27 11:06:20 -08:00
gameport.h
gcd.h
genalloc.h lib/genalloc.c: rename addr_in_gen_pool to gen_pool_has_addr 2019-12-04 19:44:13 -08:00
generic-radix-tree.h
genetlink.h
genhd.h block: fix bdev_disk_changed for non-partitioned devices 2019-11-14 07:43:53 -07:00
genl_magic_func.h
genl_magic_struct.h
getcpu.h
gfp.h mm/page_alloc: add alloc_contig_pages() 2019-12-01 12:59:06 -08:00
glob.h
gnss.h
goldfish.h
gpio-pxa.h
gpio.h
gpio_keys.h
greybus.h
hardirq.h
hash.h
hashtable.h
hdlc.h
hdlcdrv.h
hdmi.h
hid-debug.h
hid-roccat.h
hid-sensor-hub.h
hid-sensor-ids.h
hid.h
hiddev.h
hidraw.h
highmem.h
highuid.h
hil.h
hil_mlc.h
hippidevice.h
hmm.h mm/hmm: remove hmm_range_dma_map and hmm_range_dma_unmap 2019-11-23 19:56:45 -04:00
host1x.h gpu: host1x: Add direction flags to relocations 2019-10-29 15:04:34 +01:00
hp_sdc.h
hpet.h
hrtimer.h hrtimer: Annotate lockless access to timer->state 2019-11-06 23:18:31 +01:00
hrtimer_defs.h
htcpld.h
huge_mm.h mm: Remove BUG_ON mmap_sem not held from xxx_trans_huge_lock() 2019-11-06 13:02:17 +01:00
hugetlb.h hugetlb: remove unused hstate in hugetlb_fault_mutex_hash() 2019-12-01 12:59:08 -08:00
hugetlb_cgroup.h
hugetlb_inline.h
hw_breakpoint.h
hw_random.h
hwmon-sysfs.h
hwmon-vid.h
hwmon.h
hwspinlock.h
hyperv.h drivers: hv: vmbus: Introduce latency testing 2019-11-21 20:10:44 -05: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 i2c: add helper to check if a client has a driver attached 2019-12-11 08:39:07 +01:00
i8042.h
i8253.h
icmp.h icmp: add helpers to recognize ICMP error packets 2019-11-05 14:03:11 -08:00
icmpv6.h icmp: add helpers to recognize ICMP error packets 2019-11-05 14:03:11 -08:00
ide.h
idle_inject.h
idr.h XArray updates for 5.4 2019-11-08 08:46:49 -08:00
ieee80211.h
ieee802154.h
if_arp.h
if_bridge.h
if_eql.h
if_ether.h
if_fddi.h
if_frad.h
if_link.h
if_ltalk.h
if_macvlan.h net: remove unnecessary variables and callback 2019-10-24 14:53:49 -07:00
if_phonet.h
if_pppol2tp.h
if_pppox.h
if_rmnet.h
if_tap.h
if_team.h team: fix nested locking lockdep warning 2019-10-24 14:53:48 -07:00
if_tun.h
if_tunnel.h
if_vlan.h net: remove unnecessary variables and callback 2019-10-24 14:53:49 -07:00
igmp.h
ihex.h
ima.h powerpc/ima: Add support to initialize ima policy rules 2019-11-12 12:25:49 +11:00
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_task.h
initrd.h init: unify opening /dev/console as stdin/stdout/stderr 2019-12-12 18:58:24 +01:00
inotify.h
input-polldev.h
input.h
integrity.h
intel-iommu.h iommu/vt-d: Fix QI_DEV_IOTLB_PFSID and QI_DEV_EIOTLB_PFSID macros 2019-11-11 16:10:54 +01:00
intel-ish-client-if.h
intel-pti.h
intel-svm.h
intel_rapl.h
intel_th.h
interconnect-provider.h
interconnect.h
interrupt.h Merge branch 'timers-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip 2019-12-03 12:20:25 -08:00
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 iommu/io-pgtable-arm: Rationalise MAIR handling 2019-11-04 19:59:30 +00:00
io.h lib: devres: add a helper function for ioremap_uc 2019-11-11 08:40:18 +00:00
ioasid.h
ioc3.h
iocontext.h
iomap.h iomap: use a srcmap for a read-modify-write I/O 2019-10-21 08:51:59 -07:00
iommu-helper.h
iommu.h Merge branches 'iommu/fixes', 'arm/qcom', 'arm/renesas', 'arm/rockchip', 'arm/mediatek', 'arm/tegra', 'arm/smmu', 'x86/amd', 'x86/vt-d', 'virtio' and 'core' into next 2019-11-12 17:11:25 +01:00
iopoll.h
ioport.h x86/efi: EFI soft reservation to E820 enumeration 2019-11-07 15:44:14 +01:00
ioprio.h
iova.h
ip.h
ipack.h
ipc.h
ipc_namespace.h
ipmi-fru.h
ipmi.h
ipmi_smi.h ipmi: Don't allow device module unload when in use 2019-10-22 14:42:34 -05:00
ipv6.h
ipv6_route.h
irq.h genirq: Introduce irq_chip_get/set_parent_state calls 2019-11-16 10:20:02 +00:00
irq_cpustat.h
irq_poll.h
irq_sim.h
irq_work.h irq_work: Convert flags to atomic_t 2019-11-11 09:02:56 +01:00
irqbypass.h
irqchip.h
irqdesc.h
irqdomain.h irqdomain: Add bus token DOMAIN_BUS_WAKEUP 2019-11-16 10:18:52 +00:00
irqflags.h
irqhandler.h
irqnr.h
irqreturn.h
isa.h
isapnp.h
iscsi_boot_sysfs.h
iscsi_ibft.h
isicom.h
iversion.h
jbd2.h Ext4 bug fixes (including a regression fix) for 5.5 2019-12-22 10:41:48 -08:00
jhash.h
jiffies.h
journal-head.h jbd2: Make state lock a spinlock 2019-10-21 09:16:46 -04:00
joystick.h
jump_label.h
jump_label_ratelimit.h
jz4740-adc.h
jz4780-nemc.h
kallsyms.h
kasan-checks.h
kasan.h kasan: fix crashes on access to memory mapped by vm_map_ram() 2019-12-17 20:59:59 -08:00
kbd_diacr.h
kbd_kern.h
kbuild.h
kconfig.h
kcore.h
kcov.h kcov: remote coverage support 2019-12-04 19:44:14 -08:00
kd.h
kdb.h
kdebug.h
kdev_t.h
kern_levels.h
kernel-page-flags.h
kernel.h kernel.h: update comment about simple_strto<foo>() functions 2019-12-04 19:44:12 -08:00
kernel_stat.h sched/vtime: Bring up complete kcpustat accessor 2019-11-21 07:33:24 +01:00
kernelcapi.h
kernfs.h kernfs: use 64bit inos if ino_t is 64bit 2019-11-12 08:18:04 -08:00
kexec.h
key-type.h
key.h
keyboard.h
keyctl.h
kfifo.h
kgdb.h
khugepaged.h
klist.h
kmemleak.h
kmod.h
kmsg_dump.h
kobj_map.h
kobject.h
kobject_ns.h
kprobes.h
kref.h
ks0108.h
ks8842.h
ks8851_mll.h
ksm.h
kthread.h
ktime.h
kvm_host.h treewide: Use sizeof_field() macro 2019-12-09 10:36:44 -08:00
kvm_irqfd.h
kvm_para.h
kvm_types.h KVM: arm64: Support stolen time reporting via shared structure 2019-10-21 19:20:28 +01:00
l2tp.h
lantiq.h
lapb.h
latencytop.h
lcd.h
lcm.h
led-class-flash.h leds: flash: Add devm_* functions to the flash class 2019-11-03 17:38:36 +01:00
led-lm3530.h
leds-bd2802.h
leds-lp3944.h
leds-lp3952.h
leds-pca9532.h
leds-regulator.h
leds-tca6507.h
leds-ti-lmu-common.h
leds.h leds: core: Fix leds.h structure documentation 2019-11-03 17:38:55 +01:00
leds_pwm.h
libata.h libata: Fix retrieving of active qcs 2019-12-25 17:08:33 -07:00
libfdt.h
libfdt_env.h libfdt: define INT32_MAX and UINT32_MAX in libfdt_env.h 2019-11-26 13:35:25 -07:00
libgcc.h
libnvdimm.h libnvdimm: Move nvdimm_bus_attribute_group to device_type 2019-11-19 09:52:12 -08:00
libps2.h
license.h export,module: add SPDX GPL-2.0 license identifier to headers with no license 2019-11-14 11:36:53 +08:00
lightnvm.h
limits.h
linkage.h
linkmode.h
linux_logo.h
lis3lv02d.h
list.h
list_bl.h
list_lru.h
list_nulls.h
list_sort.h
livepatch.h livepatch: Allow to distinguish different version of system state changes 2019-11-01 13:08:19 +01:00
llc.h
llist.h
lockdep.h
lockref.h
log2.h
logic_pio.h logic_pio: Define PIO_INDIRECT_SIZE for !CONFIG_INDIRECT_PIO 2019-11-05 08:45:46 +08:00
lp.h
lru_cache.h
lsm_audit.h
lsm_hooks.h
lz4.h
lzo.h
mailbox_client.h
mailbox_controller.h
maple.h
marvell_phy.h
math64.h
max17040_battery.h
mbcache.h
mbus.h
mc6821.h
mc146818rtc.h
mcb.h
mdev.h
mdio-bitbang.h
mdio-gpio.h
mdio-mux.h
mdio.h
mei_cl_bus.h
mem_encrypt.h
memblock.h mm: support memblock alloc on the exact node for sparse_buffer_init() 2019-12-01 12:59:08 -08:00
memcontrol.h mm: vmscan: detect file thrashing at the reclaim root 2019-12-01 12:59:07 -08:00
memfd.h
memory.h mm/memory_hotplug: fix try_offline_node() 2019-11-15 18:34:00 -08:00
memory_hotplug.h mm/memory_hotplug.c: remove __online_page_set_limits() 2019-12-01 12:59:10 -08:00
mempolicy.h
mempool.h
memregion.h device-dax: Add a driver for "hmem" devices 2019-11-07 15:45:00 +01:00
memremap.h
memstick.h
mic_bus.h
micrel_phy.h
microchipphy.h
migrate.h
migrate_mode.h
mii.h mii: Add helpers for parsing SGMII auto-negotiation 2020-01-05 23:22:32 -08:00
mii_timestamper.h net: Add a layer for non-PHY MII time stamping drivers. 2019-12-25 19:51:33 -08:00
miscdevice.h drm msm + fixes for 5.5-rc1 2019-12-06 10:28:09 -08:00
mISDNdsp.h
mISDNhw.h
mISDNif.h
mm-arch-hooks.h
mm.h mm/memory.c: add apply_to_existing_page_range() helper 2019-12-17 20:59:59 -08:00
mm_inline.h
mm_types.h mm: thp: handle page cache THP correctly in PageTransCompoundMap 2019-11-06 08:28:58 -08:00
mm_types_task.h
mman.h
mmdebug.h
mmiotrace.h
mmu_context.h
mmu_notifier.h mm/mmu_notifier: add an interval tree notifier 2019-11-23 19:56:44 -04:00
mmzone.h mm: fix struct member name in function comments 2019-12-01 12:59:10 -08:00
mnt_namespace.h
mod_devicetable.h mod_devicetable: fix PHY module format 2019-12-20 21:47:04 -08:00
module.h export,module: add SPDX GPL-2.0 license identifier to headers with no license 2019-11-14 11:36:53 +08:00
module_signature.h
moduleloader.h kasan: support backing vmalloc space with real shadow memory 2019-12-01 12:59:05 -08:00
moduleparam.h moduleparam: fix parameter description mismatch 2019-11-07 15:11:48 +01:00
mount.h
moxtet.h
mpage.h
mpi.h
mpls.h
mpls_iptunnel.h
mroute.h
mroute6.h
mroute_base.h
msdos_fs.h
msg.h
msi.h
mtio.h compat_ioctl: move tape handling into drivers 2019-10-23 17:23:44 +02:00
mutex.h
mv643xx.h
mv643xx_eth.h
mv643xx_i2c.h
mvebu-pmsu.h
mxm-wmi.h
n_r3964.h
namei.h new helper: lookup_positive_unlocked() 2019-11-15 13:49:04 -05:00
nd.h libnvdimm: Trivial comment fix 2019-11-14 19:06:47 -08:00
ndctl.h
net.h net: Allow to show socket-specific information in /proc/[pid]/fdinfo/[fd] 2019-12-12 17:04:54 -08:00
netdev_features.h
netdevice.h net: remove the check argument from __skb_gro_checksum_convert 2020-01-03 12:24:34 -08:00
netfilter.h
netfilter_bridge.h
netfilter_defs.h
netfilter_ingress.h
netfilter_ipv4.h
netfilter_ipv6.h
netlink.h
netpoll.h
nfs.h
nfs3.h
nfs4.h nfsv4: Move NFSPROC4_CLNT_COPY_NOTIFY to end of list 2019-11-06 08:55:24 -05:00
nfs_fs.h
nfs_fs_i.h
nfs_fs_sb.h Merge branch 'linux-ssc-for-5.5' 2019-11-06 08:55:23 -05:00
nfs_iostat.h
nfs_page.h
nfs_xdr.h Merge branch 'linux-ssc-for-5.5' 2019-11-06 08:55:23 -05:00
nfsacl.h
nl802154.h
nls.h
nmi.h
node.h
nodemask.h
nospec.h
notifier.h kernel/notifier.c: remove blocking_notifier_chain_cond_register() 2019-12-04 19:44:12 -08:00
ns_common.h
nsc_gpio.h
nsproxy.h
ntb.h
ntb_transport.h
nubus.h
numa.h
nvme-fc-driver.h nvme_fc: add module to ops template to allow module references 2019-11-27 02:48:27 +09:00
nvme-fc.h nvme-fc: Sync nvme-fc header to FC-NVME-2 2019-11-04 10:56:40 -07:00
nvme-rdma.h
nvme-tcp.h
nvme.h nvme: hwmon: provide temperature min and max values for each sensor 2019-11-22 02:21:08 +09:00
nvmem-consumer.h Char/Misc driver patches for 5.5-rc1 2019-11-27 10:53:50 -08:00
nvmem-provider.h
nvram.h
objagg.h
of.h
of_address.h
of_clk.h
of_device.h
of_dma.h
of_fdt.h
of_gpio.h
of_graph.h
of_iommu.h
of_irq.h
of_mdio.h of: mdio: Add missing inline to of_mdiobus_child_is_phy() dummy 2019-12-26 15:17:26 -08:00
of_net.h net: of_get_phy_mode: Change API to solve int/unit warnings 2019-11-04 11:21:25 -08:00
of_pci.h PCI: Remove unused includes and superfluous struct declaration 2019-11-21 07:49:29 -06:00
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
oom.h
openvswitch.h
oprofile.h
osq_lock.h
overflow.h
packing.h
padata.h
page-flags-layout.h
page-flags.h mm: thp: handle page cache THP correctly in PageTransCompoundMap 2019-11-06 08:28:58 -08:00
page-isolation.h mm/page_isolation.c: convert SKIP_HWPOISON to MEMORY_OFFLINE 2019-12-01 12:59:04 -08:00
page_counter.h
page_ext.h
page_idle.h
page_owner.h
page_ref.h
pageblock-flags.h
pagemap.h
pagevec.h
pagewalk.h mm: Add a walk_page_mapping() function to the pagewalk code 2019-11-06 13:02:43 +01:00
parman.h
parport.h parport: daisy: avoid hardcoded name 2019-11-13 19:09:47 +08:00
parport_pc.h
parser.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.5-changes 2019-12-03 13:58:22 -08:00
pci_hotplug.h
pci_ids.h PCI: vmd: Add device id for VMD device 8086:9A0B 2019-11-20 16:30:10 +00:00
pda_power.h
pe.h
percpu-defs.h Revert "percpu: add __percpu to SHIFT_PERCPU_PTR" 2019-11-25 14:28:04 -08:00
percpu-refcount.h percpu-refcount: Use normal instead of RCU-sched" 2019-11-16 20:02:47 -08:00
percpu-rwsem.h
percpu.h
percpu_counter.h
perf_event.h Merge branch 'perf-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip 2019-11-26 15:04:47 -08:00
perf_regs.h
personality.h
pfn.h
pfn_t.h
phonet.h
phy.h net: phy: add PHY_INTERFACE_MODE_10GBASER 2020-01-05 15:05:35 -08:00
phy_fixed.h
phy_led_triggers.h treewide: Use sizeof_field() macro 2019-12-09 10:36:44 -08:00
phylink.h net: phylink: add support for polling MAC PCS 2020-01-05 23:22:32 -08:00
pid.h fork: extend clone3() to support setting a PID 2019-11-15 23:49:22 +01:00
pid_namespace.h fork: extend clone3() to support setting a PID 2019-11-15 23:49:22 +01:00
pim.h
pipe_fs_i.h pipe: remove 'waiting_writers' merging logic 2019-12-07 13:21:01 -08:00
pkeys.h
pktcdvd.h
pl320-ipc.h
pl353-smc.h
platform_device.h drivers: provide devm_platform_ioremap_resource_byname() 2019-11-05 18:33:13 +01:00
plist.h
pm-trace.h
pm.h PM / Domains: Introduce dev_pm_domain_start() 2019-11-13 11:41:50 +01:00
pm2301_charger.h
pm_clock.h
pm_domain.h PM / Domains: Introduce dev_pm_domain_start() 2019-11-13 11:41:50 +01:00
pm_opp.h PM / OPP: Support adjusting OPP voltages at runtime 2019-11-11 10:27:15 +05:30
pm_qos.h PM / QoS: Restore DEV_PM_QOS_MIN/MAX_FREQUENCY 2019-11-29 12:04:50 +01:00
pm_runtime.h
pm_wakeirq.h
pm_wakeup.h PM: wakeup: Add routine to help fetch wakeup source object. 2019-10-29 14:45:54 -05:00
pmbus.h
pmu.h
pnfs_osd_xdr.h
pnp.h
poison.h
poll.h
posix-clock.h ptp: fix the race between the release of ptp_clock and cdev 2019-12-30 20:19:27 -08:00
posix-timers.h
posix_acl.h
posix_acl_xattr.h
power_supply.h
powercap.h
ppp-comp.h
ppp_channel.h
ppp_defs.h
pps-gpio.h
pps_kernel.h
pr.h
preempt.h
prefetch.h
prime_numbers.h
printk.h printk: Drop pr_warning definition 2019-12-06 10:47:28 +01:00
proc_fs.h include/linux/proc_fs.h: fix confusing macro arg name 2019-12-04 19:44:11 -08:00
proc_ns.h
processor.h
profile.h
projid.h
property.h software node: unify PROPERTY_ENTRY_XXX macros 2019-11-05 23:18:10 +01:00
psci.h
pseudo_fs.h
psi.h
psi_types.h
psp-sev.h
pstore.h
pstore_ram.h
pti.h
ptp_classify.h
ptp_clock_kernel.h ptp: introduce ptp_cancel_worker_sync 2019-12-30 20:31:40 -08:00
ptr_ring.h
ptrace.h
purgatory.h
pvclock_gtod.h
pwm.h pwm: Update comment on struct pwm_ops::apply 2019-10-21 16:50:03 +02:00
pwm_backlight.h
pxa2xx_ssp.h
pxa168_eth.h
qcom-geni-se.h
qcom_scm.h drm msm + fixes for 5.5-rc1 2019-12-06 10:28:09 -08:00
qnx6_fs.h
quota.h fs/quota: handle overflows of sysctl fs.quota.* and report as unsigned long 2019-11-11 11:06:27 +01:00
quotaops.h Pull series refactoring quota enabling and disabling code. 2019-11-06 10:52:10 +01:00
radix-tree.h radix tree: Remove radix_tree_iter_find 2019-11-01 22:26:34 -04:00
raid_class.h
ramfs.h
random.h
range.h
ras.h
ratelimit.h
rational.h
rbtree.h
rbtree_augmented.h lib/rbtree: get successor's color directly 2019-12-04 19:44:13 -08:00
rbtree_latch.h
rcu_node_tree.h
rcu_segcblist.h
rcu_sync.h
rculist.h
rculist_bl.h rcu: Remove unused function hlist_bl_del_init_rcu() 2019-10-30 08:32:07 -07:00
rculist_nulls.h tcp/dccp: fix possible race __inet_lookup_established() 2019-12-13 21:40:49 -08:00
rcupdate.h Merge branch 'locking-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip 2019-11-26 16:02:40 -08:00
rcupdate_wait.h
rcutiny.h
rcutree.h
rcuwait.h
reboot-mode.h
reboot.h
reciprocal_div.h
refcount.h locking/refcount: Consolidate implementations of refcount_t 2019-11-25 09:15:32 +01:00
regmap.h
regset.h
relay.h
remoteproc.h
reset-controller.h ARM: SoC-related driver updates 2019-12-05 11:43:31 -08:00
reset.h ARM: SoC-related driver updates 2019-12-05 11:43:31 -08:00
resource.h
resource_ext.h resource: Add a resource_list_first_type helper 2019-10-29 10:47:14 +00:00
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 misc: rtsx: Add support for RTS5261 2019-11-14 13:07:48 +08:00
rtsx_usb.h
rwlock.h
rwlock_api_smp.h
rwlock_types.h
rwsem.h
s3c_adc_battery.h
sbitmap.h sbitmap: Delete sbitmap_any_bit_clear() 2019-11-13 12:50:40 -07:00
scatterlist.h
scc.h
sched.h kcov: remote coverage support 2019-12-04 19:44:14 -08:00
sched_clock.h
scif.h
scmi_protocol.h
scpi_protocol.h
screen_info.h
sctp.h
scx200.h
scx200_gpio.h
sdb.h
sdla.h
seccomp.h
securebits.h
security.h powerpc updates for 5.5 2019-11-30 14:35:43 -08:00
sed-opal.h block: sed-opal: Add support to read/write opal tables generically 2019-11-04 07:11:31 -07:00
seg6.h
seg6_genl.h
seg6_hmac.h
seg6_iptunnel.h
seg6_local.h
selection.h
sem.h
semaphore.h
seq_buf.h seq_buf: Add printing formatted hex dumps 2019-11-14 13:15:12 -05:00
seq_file.h
seq_file_net.h
seqlock.h
seqno-fence.h
serdev.h
serial.h
serial_8250.h
serial_bcm63xx.h
serial_core.h
serial_max3100.h
serial_pnx8xxx.h
serial_s3c.h
serial_sci.h
serio.h
set_memory.h
sfi.h
sfi_acpi.h
sfp.h net: phylink: delay MAC configuration for copper SFP modules 2019-12-11 11:53:41 -08:00
sh_clk.h
sh_dma.h
sh_eth.h
sh_intc.h
sh_timer.h
shdma-base.h
shm.h
shmem_fs.h
shrinker.h
signal.h
signal_types.h
signalfd.h
siox.h
siphash.h
sirfsoc_dma.h
sizes.h
skb_array.h
skbuff.h net: Fixed updating of ethertype in skb_mpls_push() 2019-12-04 17:11:25 -08:00
skmsg.h net: skmsg: fix TLS 1.3 crash with full sk_msg 2019-11-28 22:40:29 -08:00
slab.h mm, slab: remove unused kmalloc_size() 2019-12-01 06:29:17 -08:00
slab_def.h
slimbus.h
slub_def.h
sm501-regs.h
sm501.h
smc91x.h
smc911x.h
smp.h
smpboot.h
smsc911x.h
smscphy.h
sock_diag.h
socket.h io_uring: ensure async punted connect requests copy data 2019-12-03 07:04:30 -07:00
sonet.h
sony-laptop.h
sonypi.h
sort.h lib/sort: Move swap, cmp and cmp_r function types for wider use 2019-11-14 13:15:11 -05:00
sound.h
soundcard.h
spinlock.h
spinlock_api_smp.h
spinlock_api_up.h
spinlock_types.h
spinlock_types_up.h
spinlock_up.h
splice.h
spmi.h
sram.h
srcu.h
srcutiny.h
srcutree.h
ssbi.h
stackdepot.h
stackleak.h
stackprotector.h
stacktrace.h
start_kernel.h
stat.h statx: define STATX_ATTR_VERITY 2019-11-13 12:15:34 -08:00
statfs.h
static_key.h
stddef.h
stm.h
stmmac.h net: stmmac: Add basic EST support for GMAC5+ 2019-12-18 12:17:10 -08:00
stmp3xxx_rtc_wdt.h
stmp_device.h
stop_machine.h
string.h rss_stat: add support to detect RSS updates of external mm 2019-12-01 06:29:18 -08:00
string_helpers.h
stringhash.h
stringify.h
sungem_phy.h
sunserialcore.h
sunxi-rsb.h
superhyway.h
suspend.h
svga.h
sw842.h
swab.h
swait.h
swap.h mm: vmscan: detect file thrashing at the reclaim root 2019-12-01 12:59:07 -08:00
swap_cgroup.h
swap_slots.h
swapfile.h
swapops.h
swiotlb.h
switchtec.h
sxgbe_platform.h net: ethernet: sxgbe: Rename Samsung to lowercase 2020-01-05 14:48:55 -08:00
sync_core.h
sync_file.h
synclink.h
sys.h
sys_soc.h
syscalls.h fs: remove ksys_dup() 2019-12-12 19:00:36 +01:00
syscore_ops.h
sysctl.h include/linux/sysctl.h: inline braces for ctl_table and ctl_table_header 2019-12-04 19:44:11 -08:00
sysfs.h sysfs: Fixes __BIN_ATTR_WO() macro 2019-11-13 00:33:21 +11:00
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 tcp: add TCP_INFO status for failed client TFO 2019-10-25 19:25:37 -07:00
tee_drv.h
textsearch.h
textsearch_fsm.h
tfrc.h
thermal.h thermal: Remove netlink support 2019-11-07 07:00:26 +01:00
thread_info.h uaccess: disallow > INT_MAX copy sizes 2019-12-04 19:44:14 -08:00
threads.h
thunderbolt.h
ti-emif-sram.h
ti_wilink_st.h
tick.h Merge branch 'core-rcu-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip 2019-11-26 15:42:43 -08:00
tifm.h
timb_dma.h
timb_gpio.h
time.h tcp: fix rejected syncookies due to stale timestamps 2019-12-06 21:05:14 -08:00
time32.h y2038: uapi: change __kernel_time_t to __kernel_old_time_t 2019-11-15 14:38:29 +01:00
time64.h
timecounter.h
timekeeper_internal.h
timekeeping.h
timekeeping32.h
timer.h
timerfd.h
timeriomem-rng.h
timerqueue.h
timex.h
tnum.h
topology.h
torture.h
toshiba.h
tpm.h security: keys: trusted: fix lost handle flush 2019-12-17 11:46:43 +02:00
tpm_command.h
tpm_eventlog.h
trace.h tracing: Adding new functions for kernel access to Ftrace instances 2019-11-22 19:41:08 -05:00
trace_clock.h
trace_events.h tracing: Adding new functions for kernel access to Ftrace instances 2019-11-22 19:41:08 -05:00
trace_seq.h tracing: Use seq_buf_hex_dump() to dump buffers 2019-11-14 13:15:12 -05:00
tracefs.h
tracehook.h
tracepoint-defs.h
tracepoint.h
transport_class.h
ts-nbus.h
tsacct_kern.h
tty.h
tty_driver.h
tty_flip.h
tty_ldisc.h
typecheck.h
types.h y2038: syscall implementation cleanups 2019-12-01 14:00:59 -08:00
u64_stats_sync.h u64_stats: provide u64_stats_t type 2019-11-07 20:03:08 -08:00
uaccess.h uaccess: Add strict non-pagefault kernel-space read function 2019-11-02 12:39:12 -07:00
ucb1400.h
ucs2_string.h
udp.h
uidgid.h
uio.h pipe: Use head and tail pointers for the ring, not cursor and length 2019-10-31 15:12:34 +00:00
uio_driver.h
umh.h
unicode.h
uprobes.h
usb.h
usb_usual.h
usbdevice_fs.h
user-return-notifier.h
user.h
user_namespace.h
userfaultfd_k.h
util_macros.h
uts.h
utsname.h
uuid.h
vbox_utils.h
verification.h
vermagic.h
vexpress.h
vfio.h
vfs.h
vga_switcheroo.h
vgaarb.h
via-core.h
via-gpio.h
via.h
via_i2c.h
videodev2.h
virtio.h
virtio_byteorder.h
virtio_caif.h
virtio_config.h
virtio_console.h
virtio_net.h
virtio_ring.h
virtio_vsock.h vsock: handle buffer_size sockopts in the core 2019-11-14 18:12:18 -08:00
visorbus.h
vlynq.h
vm_event_item.h
vmacache.h
vmalloc.h kasan: support backing vmalloc space with real shadow memory 2019-12-01 12:59:05 -08:00
vme.h
vmpressure.h
vmstat.h mm/memcontrol: use vmstat names for printing statistics 2019-12-04 19:44:11 -08:00
vmw_vmci_api.h vsock/vmci: register vmci_transport only when VMCI guest/host are active 2019-11-14 18:12:18 -08:00
vmw_vmci_defs.h
vringh.h
vt.h
vt_buffer.h
vt_kern.h
vtime.h context_tracking: Check static key on context_tracking_enabled_*cpu() 2019-10-29 10:01:16 +01:00
w1-gpio.h
w1.h w1: Fix documentation warning. 2019-11-14 12:20:02 +08:00
wait.h Add wake_up_interruptible_sync_poll_locked() 2019-10-31 15:12:23 +00:00
wait_bit.h
watchdog.h
win_minmax.h
wireless.h
wkup_m3_ipc.h
wl12xx.h
wm97xx.h
wmi.h
workqueue.h
writeback.h
ww_mutex.h
xarray.h
xattr.h
xxhash.h
xz.h
yam.h
z2_battery.h
zbud.h
zconf.h
zlib.h
zorro.h
zpool.h
zsmalloc.h
zstd.h
zutil.h