WSL2-Linux-Kernel/include/linux
Aleksa Sarai 8db52c7e7e namei: LOOKUP_IN_ROOT: chroot-like scoped resolution
/* Background. */
Container runtimes or other administrative management processes will
often interact with root filesystems while in the host mount namespace,
because the cost of doing a chroot(2) on every operation is too
prohibitive (especially in Go, which cannot safely use vfork). However,
a malicious program can trick the management process into doing
operations on files outside of the root filesystem through careful
crafting of symlinks.

Most programs that need this feature have attempted to make this process
safe, by doing all of the path resolution in userspace (with symlinks
being scoped to the root of the malicious root filesystem).
Unfortunately, this method is prone to foot-guns and usually such
implementations have subtle security bugs.

Thus, what userspace needs is a way to resolve a path as though it were
in a chroot(2) -- with all absolute symlinks being resolved relative to
the dirfd root (and ".." components being stuck under the dirfd root).
It is much simpler and more straight-forward to provide this
functionality in-kernel (because it can be done far more cheaply and
correctly).

More classical applications that also have this problem (which have
their own potentially buggy userspace path sanitisation code) include
web servers, archive extraction tools, network file servers, and so on.

/* Userspace API. */
LOOKUP_IN_ROOT will be exposed to userspace through openat2(2).

/* Semantics. */
Unlike most other LOOKUP flags (most notably LOOKUP_FOLLOW),
LOOKUP_IN_ROOT applies to all components of the path.

With LOOKUP_IN_ROOT, any path component which attempts to cross the
starting point of the pathname lookup (the dirfd passed to openat) will
remain at the starting point. Thus, all absolute paths and symlinks will
be scoped within the starting point.

There is a slight change in behaviour regarding pathnames -- if the
pathname is absolute then the dirfd is still used as the root of
resolution of LOOKUP_IN_ROOT is specified (this is to avoid obvious
foot-guns, at the cost of a minor API inconsistency).

As with LOOKUP_BENEATH, Jann's security concern about ".."[1] applies to
LOOKUP_IN_ROOT -- therefore ".." resolution is blocked. This restriction
will be lifted in a future patch, but requires more work to ensure that
permitting ".." is done safely.

Magic-link jumps are also blocked, because they can beam the path lookup
across the starting point. It would be possible to detect and block
only the "bad" crossings with path_is_under() checks, but it's unclear
whether it makes sense to permit magic-links at all. However, userspace
is recommended to pass LOOKUP_NO_MAGICLINKS if they want to ensure that
magic-link crossing is entirely disabled.

/* Testing. */
LOOKUP_IN_ROOT is tested as part of the openat2(2) selftests.

[1]: https://lore.kernel.org/lkml/CAG48ez1jzNvxB+bfOBnERFGp=oMM0vHWuLD6EULmne3R6xa53w@mail.gmail.com/

Cc: Christian Brauner <christian.brauner@ubuntu.com>
Signed-off-by: Aleksa Sarai <cyphar@cyphar.com>
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
2019-12-08 19:09:43 -05: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
extcon
firmware ARM: SoC-related driver updates 2019-12-05 11:43:31 -08:00
fpga
fsl
gpio Merge branch 'regulator-5.5' into regulator-next 2019-11-22 19:56:20 +00:00
greybus
hsi
i3c
iio
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 mmc: core: Fix size overflow for mmc partitions 2019-11-18 10:05:38 +01: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
pinctrl
platform_data Few ti-sysc related fixes for v5.5 merge window 2019-12-06 08:26:50 -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 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
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
ssb
sunrpc This is a relatively quiet cycle for nfsd, mainly various bugfixes. 2019-12-07 16:56:00 -08:00
ulpi
unaligned
usb usb: typec: tcpm: Remove tcpc_config configuration mechanism 2019-11-16 14:45:31 +01: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
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_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: cgroup_rstat_updated() shouldn't be called on cgroup1 2019-11-18 08:40:41 -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
bpf.h bpf: Simplify __bpf_arch_text_poke poke type handling 2019-11-24 17:12:11 -08:00
bpf_lirc.h
bpf_trace.h
bpf_types.h bpf: Annotate context types 2019-11-15 23:44:48 +01:00
bpf_verifier.h bpf: Constant map key tracking for prog array pokes 2019-11-24 17:04:11 -08:00
bpfilter.h
brcmphy.h
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: Support attaching tracing BPF program to other BPF programs 2019-11-15 23:45:24 +01: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
context_tracking_state.h
cordic.h
coredump.h
coresight-pmu.h
coresight-stm.h
coresight.h
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
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
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 dma-mapping updates for 5.5-rc1 2019-11-28 11:16:43 -08: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-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_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 ACPI updates for 5.5-rc1 2019-11-26 19:25:25 -08: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
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: Avoid setting bpf insns pages read-only when prog is jited 2019-12-01 09:34:03 -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 New tracing features: 2019-11-27 11:42:01 -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
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
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: replace i2c_new_probed_device with an ERR_PTR variant 2019-11-28 17:15:21 +01:00
i8042.h
i8253.h
icmp.h
icmpv6.h
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
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
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
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
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
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
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 This merge window saw the the following new featuers added to ext4: 2019-11-30 10:53:02 -08: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.h kasan: support backing vmalloc space with real shadow memory 2019-12-01 12:59:05 -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 Merge branch 'kvm-tsx-ctrl' into HEAD 2019-11-21 12:03:40 +01:00
kvm_irqfd.h
kvm_para.h
kvm_types.h
l2tp.h
lantiq.h
lapb.h
latencytop.h
lcd.h
lcm.h
led-class-flash.h
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_pwm.h
libata.h
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
llc.h
llist.h
lockdep.h
lockref.h
log2.h
logic_pio.h
lp.h
lru_cache.h
lsm_audit.h
lsm_hooks.h
lz4.h
lzo.h
mISDNdsp.h
mISDNhw.h
mISDNif.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
miscdevice.h drm msm + fixes for 5.5-rc1 2019-12-06 10:28:09 -08:00
mm-arch-hooks.h
mm.h mm: remove __ARCH_HAS_4LEVEL_HACK and include/asm-generic/4level-fixup.h 2019-12-04 19:44:15 -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
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
mutex.h
mv643xx.h
mv643xx_eth.h
mv643xx_i2c.h
mvebu-pmsu.h
mxm-wmi.h
n_r3964.h
namei.h namei: LOOKUP_IN_ROOT: chroot-like scoped resolution 2019-12-08 19:09:43 -05:00
nd.h libnvdimm: Trivial comment fix 2019-11-14 19:06:47 -08:00
ndctl.h
net.h
netdev_features.h
netdevice.h inet: protect against too small mtu values. 2019-12-07 11:55:11 -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
nfs_fs.h
nfs_fs_i.h
nfs_fs_sb.h
nfs_iostat.h
nfs_page.h
nfs_xdr.h
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.h
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_net.h
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
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 helpers phy_(un)lock_mdio_bus 2019-11-25 10:47:00 -08:00
phy_fixed.h
phy_led_triggers.h
phylink.h net: phylink: rename mac_link_state() op to mac_pcs_get_state() 2019-11-23 16:13:39 -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
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
pmbus.h
pmu.h
pnfs_osd_xdr.h
pnp.h
poison.h
poll.h
posix-clock.h
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
proc_fs.h include/linux/proc_fs.h: fix confusing macro arg name 2019-12-04 19:44:11 -08:00
proc_ns.h nsfs: clean-up ns_get_path() signature to return int 2019-12-08 19:09:37 -05:00
processor.h
profile.h
projid.h
property.h
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
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 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
radix-tree.h
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
rculist_nulls.h
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
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
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: sfp: soft status and control support 2019-11-20 22:29:40 -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
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
sync_core.h
sync_file.h
synclink.h
sys.h
sys_soc.h
syscalls.h y2038: time: avoid timespec usage in settimeofday() 2019-11-15 14:38:30 +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
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 KEYS: trusted: Move TPM2 trusted keys code 2019-11-12 21:45:37 +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
ucb1400.h
ucs2_string.h
udp.h
uidgid.h
uio.h
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
w1-gpio.h
w1.h w1: Fix documentation warning. 2019-11-14 12:20:02 +08:00
wait.h
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