mirror-linux/include/linux
Paolo Abeni cfde141ea3 mptcp: move option parsing into mptcp_incoming_options()
The mptcp_options_received structure carries several per
packet flags (mp_capable, mp_join, etc.). Such fields must
be cleared on each packet, even on dropped ones or packet
not carrying any MPTCP options, but the current mptcp
code clears them only on TCP option reset.

On several races/corner cases we end-up with stray bits in
incoming options, leading to WARN_ON splats. e.g.:

[  171.164906] Bad mapping: ssn=32714 map_seq=1 map_data_len=32713
[  171.165006] WARNING: CPU: 1 PID: 5026 at net/mptcp/subflow.c:533 warn_bad_map (linux-mptcp/net/mptcp/subflow.c:533 linux-mptcp/net/mptcp/subflow.c:531)
[  171.167632] Modules linked in: ip6_vti ip_vti ip_gre ipip sit tunnel4 ip_tunnel geneve ip6_udp_tunnel udp_tunnel macsec macvtap tap ipvlan macvlan 8021q garp mrp xfrm_interface veth netdevsim nlmon dummy team bonding vcan bridge stp llc ip6_gre gre ip6_tunnel tunnel6 tun binfmt_misc intel_rapl_msr intel_rapl_common rfkill kvm_intel kvm irqbypass crct10dif_pclmul crc32_pclmul ghash_clmulni_intel joydev virtio_balloon pcspkr i2c_piix4 sunrpc ip_tables xfs libcrc32c crc32c_intel serio_raw virtio_console ata_generic virtio_blk virtio_net net_failover failover ata_piix libata
[  171.199464] CPU: 1 PID: 5026 Comm: repro Not tainted 5.7.0-rc1.mptcp_f227fdf5d388+ #95
[  171.200886] Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS 1.12.0-2.fc30 04/01/2014
[  171.202546] RIP: 0010:warn_bad_map (linux-mptcp/net/mptcp/subflow.c:533 linux-mptcp/net/mptcp/subflow.c:531)
[  171.206537] Code: c1 ea 03 0f b6 14 02 48 89 f8 83 e0 07 83 c0 03 38 d0 7c 04 84 d2 75 1d 8b 55 3c 44 89 e6 48 c7 c7 20 51 13 95 e8 37 8b 22 fe <0f> 0b 48 83 c4 08 5b 5d 41 5c c3 89 4c 24 04 e8 db d6 94 fe 8b 4c
[  171.220473] RSP: 0018:ffffc90000150560 EFLAGS: 00010282
[  171.221639] RAX: 0000000000000000 RBX: 0000000000000000 RCX: 0000000000000000
[  171.223108] RDX: 0000000000000000 RSI: 0000000000000008 RDI: fffff5200002a09e
[  171.224388] RBP: ffff8880aa6e3c00 R08: 0000000000000001 R09: fffffbfff2ec9955
[  171.225706] R10: ffffffff9764caa7 R11: fffffbfff2ec9954 R12: 0000000000007fca
[  171.227211] R13: ffff8881066f4a7f R14: ffff8880aa6e3c00 R15: 0000000000000020
[  171.228460] FS:  00007f8623719740(0000) GS:ffff88810be00000(0000) knlGS:0000000000000000
[  171.230065] CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
[  171.231303] CR2: 00007ffdab190a50 CR3: 00000001038ea006 CR4: 0000000000160ee0
[  171.232586] Call Trace:
[  171.233109]  <IRQ>
[  171.233531] get_mapping_status (linux-mptcp/net/mptcp/subflow.c:691)
[  171.234371] mptcp_subflow_data_available (linux-mptcp/net/mptcp/subflow.c:736 linux-mptcp/net/mptcp/subflow.c:832)
[  171.238181] subflow_state_change (linux-mptcp/net/mptcp/subflow.c:1085 (discriminator 1))
[  171.239066] tcp_fin (linux-mptcp/net/ipv4/tcp_input.c:4217)
[  171.240123] tcp_data_queue (linux-mptcp/./include/linux/compiler.h:199 linux-mptcp/net/ipv4/tcp_input.c:4822)
[  171.245083] tcp_rcv_established (linux-mptcp/./include/linux/skbuff.h:1785 linux-mptcp/./include/net/tcp.h:1774 linux-mptcp/./include/net/tcp.h:1847 linux-mptcp/net/ipv4/tcp_input.c:5238 linux-mptcp/net/ipv4/tcp_input.c:5730)
[  171.254089] tcp_v4_rcv (linux-mptcp/./include/linux/spinlock.h:393 linux-mptcp/net/ipv4/tcp_ipv4.c:2009)
[  171.258969] ip_protocol_deliver_rcu (linux-mptcp/net/ipv4/ip_input.c:204 (discriminator 1))
[  171.260214] ip_local_deliver_finish (linux-mptcp/./include/linux/rcupdate.h:651 linux-mptcp/net/ipv4/ip_input.c:232)
[  171.261389] ip_local_deliver (linux-mptcp/./include/linux/netfilter.h:307 linux-mptcp/./include/linux/netfilter.h:301 linux-mptcp/net/ipv4/ip_input.c:252)
[  171.265884] ip_rcv (linux-mptcp/./include/linux/netfilter.h:307 linux-mptcp/./include/linux/netfilter.h:301 linux-mptcp/net/ipv4/ip_input.c:539)
[  171.273666] process_backlog (linux-mptcp/./include/linux/rcupdate.h:651 linux-mptcp/net/core/dev.c:6135)
[  171.275328] net_rx_action (linux-mptcp/net/core/dev.c:6572 linux-mptcp/net/core/dev.c:6640)
[  171.280472] __do_softirq (linux-mptcp/./arch/x86/include/asm/jump_label.h:25 linux-mptcp/./include/linux/jump_label.h:200 linux-mptcp/./include/trace/events/irq.h:142 linux-mptcp/kernel/softirq.c:293)
[  171.281379] do_softirq_own_stack (linux-mptcp/arch/x86/entry/entry_64.S:1083)
[  171.282358]  </IRQ>

We could address the issue clearing explicitly the relevant fields
in several places - tcp_parse_option, tcp_fast_parse_options,
possibly others.

Instead we move the MPTCP option parsing into the already existing
mptcp ingress hook, so that we need to clear the fields in a single
place.

This allows us dropping an MPTCP hook from the TCP code and
removing the quite large mptcp_options_received from the tcp_sock
struct. On the flip side, the MPTCP sockets will traverse the
option space twice (in tcp_parse_option() and in
mptcp_incoming_options(). That looks acceptable: we already
do that for syn and 3rd ack packets, plain TCP socket will
benefit from it, and even MPTCP sockets will experience better
code locality, reducing the jumps between TCP and MPTCP code.

v1 -> v2:
 - rebased on current '-net' tree

Fixes: 648ef4b886 ("mptcp: Implement MPTCP receive path")
Signed-off-by: Paolo Abeni <pabeni@redhat.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2020-04-30 12:23:22 -07:00
..
amba Revert "amba: Initialize dma_parms for amba devices" 2020-04-01 08:03:28 +02:00
avf
bcma
byteorder
can can: dev: peak_canfd.h: Replace zero-length array with flexible-array member 2020-04-18 15:44:54 -05:00
ceph ceph: consider inode's last read/write when calculating wanted caps 2020-03-30 12:42:42 +02:00
clk
crush
decompress
device
dma
dsa
extcon
firmware ARM: driver updates 2020-04-03 15:05:35 -07:00
fpga
fsl Merge branch 'linus' of git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6 2020-04-01 14:47:40 -07:00
gpio gpio: Rename variable in core APIs 2020-03-31 21:29:04 +02:00
greybus
hsi
i3c
iio chrome platform changes for 5.7 2020-04-08 21:25:49 -07:00
input
irqchip irqchip/gic-v4.1: Add support for VPENDBASER's Dirty+Valid signaling 2020-04-16 10:28:12 +01:00
isdn
lockd
mailbox
mfd linux-watchdog 5.7-rc1 tag 2020-04-08 21:29:10 -07:00
mlx4
mlx5 RDMA 5.7 pull request 2020-04-01 18:18:18 -07:00
mmc mmc: core: Re-work the code for eMMC sanitize 2020-03-26 14:45:31 +01:00
mtd Raw NAND core changes: 2020-03-30 10:14:19 +02:00
mux
netfilter
netfilter_arp
netfilter_bridge
netfilter_ipv4
netfilter_ipv6
perf
phy
pinctrl pinctrl: Define of_pinctrl_get() dummy for !PINCTRL 2020-03-31 22:08:54 +02:00
platform_data platform_data: wilco-ec.h: Replace zero-length array with flexible-array member 2020-04-18 15:44:55 -05:00
power change email address for Pali Rohár 2020-04-10 15:36:22 -07:00
qed qed: Fix use after free in qed_chain_free 2020-03-30 11:45:18 -07:00
raid
regulator
remoteproc
reset
rpmsg
rtc
sched sched: topology.h: Replace zero-length array with flexible-array member 2020-04-18 15:44:56 -05:00
soc ARM: driver updates 2020-04-03 15:05:35 -07:00
soundwire
spi - Fix-ups 2020-04-07 19:44:52 -07:00
ssb
sunrpc svcrdma: Fix leak of svc_rdma_recv_ctxt objects 2020-04-17 12:40:38 -04:00
ulpi
unaligned
usb sound updates for 5.7-rc1 2020-04-02 15:50:04 -07:00
wimax
8250_pci.h
a.out.h
acct.h
acpi.h libnvdimm for 5.7 2020-04-08 21:03:40 -07:00
acpi_dma.h
acpi_iort.h
acpi_pmtmr.h
adb.h
adfs_fs.h
adxl.h
aer.h PCI/AER: Rationalize error status register clearing 2020-03-28 13:19:05 -05:00
agp_backend.h
agpgart.h
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 arm64 updates for 5.7: 2020-03-31 10:05:01 -07: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-isc-media.h
atmel-mci.h
atmel-ssc.h
atmel_pdc.h
atomic-fallback.h
atomic.h
attribute_container.h
audit.h
auto_dev-ioctl.h
auto_fs.h
auxvec.h
average.h
backing-dev-defs.h buffer: remove useless comment and WB_REASON_FREE_MORE_MEM, reason. 2020-04-17 21:38:11 -06:00
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 bio: Replace zero-length array with flexible-array member 2020-04-18 15:44:54 -05:00
bit_spinlock.h
bitfield.h
bitmap.h
bitops.h bitops: always inline sign extension helpers 2020-04-07 10:43:42 -07:00
bitrev.h
bits.h linux/bits.h: add compile time sanity check of GENMASK inputs 2020-04-07 10:43:43 -07:00
blk-cgroup.h blkcg: don't offline parent blkcg first 2020-04-01 14:56:44 -06:00
blk-mq-pci.h
blk-mq-rdma.h
blk-mq-virtio.h
blk-mq.h blk-mq: Replace zero-length array with flexible-array member 2020-04-18 15:44:54 -05:00
blk-pm.h
blk_types.h blk_types: Replace zero-length array with flexible-array member 2020-04-18 15:44:54 -05:00
blkdev.h for-5.7/drivers-2020-03-29 2020-03-30 11:43:51 -07:00
blkpg.h
blktrace_api.h
blockgroup_lock.h
bma150.h
bootconfig.h
bottom_half.h
bpf-cgroup.h bpf: Implement bpf_prog replacement for an active bpf_cgroup_link 2020-03-30 17:36:33 -07:00
bpf.h Merge git://git.kernel.org/pub/scm/linux/kernel/git/bpf/bpf-next 2020-03-30 19:52:37 -07:00
bpf_lirc.h
bpf_lsm.h bpf: lsm: Implement attach, detach and execution 2020-03-30 01:34:00 +02:00
bpf_trace.h
bpf_types.h bpf: Introduce BPF_PROG_TYPE_LSM 2020-03-30 01:34:00 +02:00
bpf_verifier.h bpf: Verifier, do explicit ALU32 bounds tracking 2020-03-30 14:59:53 -07:00
bpfilter.h
brcmphy.h net: phy: bcm7xx: add jumbo frame configuration to PHY 2020-03-27 16:07:24 -07:00
bsearch.h
bsg-lib.h
bsg.h
btf.h
btree-128.h
btree-type.h
btree.h
btrfs.h
buffer_head.h ext4: use non-movable memory for superblock readahead 2020-04-15 23:58:48 -04:00
bug.h
build-salt.h
build_bug.h
bvec.h
c2port.h
cache.h
cacheinfo.h
capability.h
cb710.h
cciss_ioctl.h
ccp.h
cdev.h
cdrom.h
cfag12864b.h
cgroup-defs.h Merge branch 'for-5.7' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/cgroup 2020-04-03 11:30:20 -07:00
cgroup.h
cgroup_rdma.h
cgroup_subsys.h
circ_buf.h
cleancache.h
clk-provider.h
clk.h
clkdev.h
clock_cooling.h
clockchips.h
clocksource.h
cm4000_cs.h
cma.h mm: cma: NUMA node interface 2020-04-10 15:36:21 -07:00
cmdline-parser.h
cn_proc.h
cnt32_to_63.h
coda.h
compaction.h
compat.h Merge branch 'x86-cleanups-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip 2020-03-31 11:04:05 -07:00
compiler-clang.h
compiler-gcc.h
compiler-intel.h
compiler.h compiler.h: fix error in BUILD_BUG_ON() reporting 2020-04-07 10:43:42 -07:00
compiler_attributes.h
compiler_types.h compiler: remove CONFIG_OPTIMIZE_INLINING entirely 2020-04-07 10:43:42 -07:00
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 cpu/hotplug: Ignore pm_wakeup_pending() for disable_nonboot_cpus() 2020-03-28 11:42:55 +01:00
cpu_cooling.h
cpu_pm.h
cpu_rmap.h lib: cpu_rmap: Replace zero-length array with flexible-array member 2020-04-18 15:44:55 -05:00
cpufeature.h
cpufreq.h
cpuhotplug.h
cpuidle.h
cpuidle_haltpoll.h
cpumask.h
cpuset.h Revert "cpuset: Make cpuset hotplug synchronous" 2020-04-03 11:32:13 -04:00
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
cryptohash.h
cs5535.h
ctype.h
cuda.h
cyclades.h
davinci_emac.h
dax.h dax,iomap: Add helper dax_iomap_zero() to zero a range 2020-04-02 19:15:03 -07:00
dca.h
dcache.h
dccp.h
dcookies.h
debug_locks.h
debugfs.h Merge branch 'linus' of git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6 2020-04-01 14:47:40 -07:00
debugobjects.h
delay.h
delayacct.h
delayed_call.h
dev_printk.h
devcoredump.h
devfreq-event.h
devfreq.h
devfreq_cooling.h thermal: devfreq_cooling: inline all stubs for CONFIG_DEVFREQ_THERMAL=n 2020-04-07 10:45:15 +02:00
device-mapper.h dm,dax: Add dax zero_page_range operation 2020-04-02 19:15:03 -07:00
device.h IOMMU Updates for Linux v5.7 2020-04-08 11:00:00 -07:00
device_cgroup.h
devpts_fs.h
digsig.h digsig.h: Replace zero-length array with flexible-array member 2020-04-18 15:44:54 -05:00
dim.h
dio.h
dirent.h dirent.h: Replace zero-length array with flexible-array member 2020-04-18 15:44:54 -05:00
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-direction.h
dma-fence-array.h
dma-fence-chain.h
dma-fence.h
dma-heap.h
dma-iommu.h
dma-mapping.h
dma-noncoherent.h
dma-resv.h
dmaengine.h
dmapool.h
dmar.h
dmi.h
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
edd.h
eeprom_93cx6.h
eeprom_93xx46.h
efi-bgrt.h
efi.h Merge branch 'x86-cleanups-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip 2020-03-31 11:04:05 -07:00
efi_embedded_fw.h
efs_vh.h
eisa.h
elevator.h
elf-fdpic.h
elf-randomize.h
elf.h
elfcore-compat.h
elfcore.h
elfnote.h
enclosure.h enclosure.h: Replace zero-length array with flexible-array member 2020-04-18 15:44:54 -05:00
energy_model.h energy_model.h: Replace zero-length array with flexible-array member 2020-04-18 15:44:54 -05:00
err.h
errname.h
errno.h
error-injection.h
errqueue.h
errseq.h
etherdevice.h
ethtool.h ethtool.h: Replace zero-length array with flexible-array member 2020-04-18 15:44:54 -05:00
ethtool_netlink.h
eventfd.h
eventpoll.h
evm.h
export.h
exportfs.h
ext2_fs.h
extable.h
extcon-provider.h
extcon.h
f2fs_fs.h
f75375s.h
falloc.h
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
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 drm: add support for hugepages to TTM 2020-04-04 11:58:55 -07: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
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
ftrace_irq.h
futex.h
fwnode.h
gameport.h
gcd.h
genalloc.h genalloc.h: Replace zero-length array with flexible-array member 2020-04-18 15:44:54 -05:00
generic-radix-tree.h
genetlink.h
genhd.h for-5.7/block-2020-03-29 2020-03-30 11:20:13 -07:00
genl_magic_func.h
genl_magic_struct.h
getcpu.h
gfp.h mm: make it clear that gfp reclaim modifiers are valid only for sleepable allocations 2020-04-07 10:43:38 -07: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_FAULT_SNAPSHOT 2020-03-27 20:19:24 -03:00
host1x.h
hp_sdc.h
hpet.h
hrtimer.h
hrtimer_defs.h
htcpld.h
huge_mm.h mm: merge parameters for change_protection() 2020-04-07 10:43:39 -07:00
hugetlb.h mm: hugetlb: optionally allocate gigantic hugepages using cma 2020-04-10 15:36:21 -07:00
hugetlb_cgroup.h hugetlb_cgroup: add accounting for shared mappings 2020-04-02 09:35:32 -07:00
hugetlb_inline.h
hw_breakpoint.h
hw_random.h
hwmon-sysfs.h
hwmon-vid.h
hwmon.h
hwspinlock.h
hyperv.h
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: remove i2c_new_probed_device API 2020-04-15 11:48:21 +02:00
i8042.h
i8253.h
icmp.h
icmpv6.h
ide.h
idle_inject.h
idr.h
ieee80211.h Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2020-03-29 21:25:29 -07:00
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 igmp.h: Replace zero-length array with flexible-array member 2020-04-18 15:44:55 -05:00
ihex.h ihex.h: Replace zero-length array with flexible-array member 2020-04-18 15:44:55 -05:00
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_task.h
initrd.h
inotify.h
input-polldev.h
input.h
integrity.h
intel-iommu.h
intel-ish-client-if.h
intel-pti.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
ioasid.h
iocontext.h
iomap.h
iommu-helper.h
iommu.h iommu: Move fwspec->iommu_priv to struct dev_iommu 2020-03-27 11:14:52 +01:00
iopoll.h
ioport.h
ioprio.h
iova.h
ip.h
ipack.h
ipc.h
ipc_namespace.h
ipmi.h
ipmi_smi.h
ipv6.h net: ipv6: add support for rpl sr exthdr 2020-03-29 22:30:57 -07:00
ipv6_route.h
irq.h A set of fixes/updates for the interrupt subsystem: 2020-04-19 11:23:33 -07:00
irq_cpustat.h
irq_poll.h
irq_sim.h
irq_work.h
irqbypass.h
irqchip.h
irqdesc.h
irqdomain.h
irqflags.h hrtimer: Don't dereference the hrtimer pointer after the callback 2020-04-01 13:20:14 +02:00
irqhandler.h
irqnr.h
irqreturn.h
isa.h
isapnp.h
iscsi_boot_sysfs.h
iscsi_ibft.h
isicom.h
iversion.h
jbd2.h
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: detect negative size in memory operation function 2020-04-02 09:35:30 -07:00
kbd_diacr.h
kbd_kern.h
kbuild.h
kconfig.h
kcore.h
kcov.h
kd.h
kdb.h
kdebug.h
kdev_t.h
kern_levels.h
kernel-page-flags.h
kernel.h
kernel_stat.h
kernelcapi.h
kernfs.h
kexec.h
key-type.h KEYS: Don't write out to userspace while holding key semaphore 2020-03-29 12:40:41 +01:00
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 kthread: mark timer used by delayed kthread works as IRQ safe 2020-04-02 09:35:25 -07:00
ktime.h timekeeping and timer updates: 2020-03-30 18:51:47 -07:00
kvm_host.h KVM: Check validity of resolved slot when searching memslots 2020-04-14 10:39:56 -04: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: old enums are not really applicable to new code 2020-04-06 22:55:27 +02:00
libata.h ata: move ata_eh_analyze_ncq_error() & co. to libata-sata.c 2020-03-26 10:28:20 -06:00
libfdt.h
libfdt_env.h
libgcc.h
libnvdimm.h
libps2.h
license.h
lightnvm.h
limits.h Merge git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net-next 2020-03-31 17:29:33 -07:00
linkage.h
linkmode.h
linux_logo.h
lis3lv02d.h
list.h
list_bl.h
list_lru.h list_lru.h: Replace zero-length array with flexible-array member 2020-04-18 15:44:55 -05:00
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_hook_defs.h security: Refactor declaration of LSM hooks 2020-03-30 01:34:00 +02:00
lsm_hooks.h Merge git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net-next 2020-03-31 17:29:33 -07:00
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-xpcs.h
mdio.h
mei_cl_bus.h
mem_encrypt.h
memblock.h mm: cma: NUMA node interface 2020-04-10 15:36:21 -07:00
memcontrol.h memcontrol.h: Replace zero-length array with flexible-array member 2020-04-18 15:44:55 -05:00
memfd.h
memory.h drivers/base/memory.c: drop section_count 2020-04-07 10:43:40 -07:00
memory_hotplug.h mm/memory_hotplug: add pgprot_t to mhp_params 2020-04-10 15:36:21 -07:00
mempolicy.h mm/mempolicy: check hugepage migration is supported by arch in vma_migratable() 2020-04-02 09:35:31 -07:00
mempool.h
memregion.h
memremap.h libnvdimm for 5.7 2020-04-08 21:03:40 -07:00
memstick.h
mhi.h bus: mhi: core: Add support for reading MHI info from device 2020-03-26 15:51:07 +01:00
mic_bus.h
micrel_phy.h
microchipphy.h
migrate.h mm: handle multiple owners of device private pages in migrate_vma 2020-03-26 14:33:38 -03:00
migrate_mode.h
mii.h
mii_timestamper.h
min_heap.h
miscdevice.h
mm-arch-hooks.h
mm.h mm/special: create generic fallbacks for pte_special() and pte_mkspecial() 2020-04-10 15:36:21 -07:00
mm_inline.h mm: code cleanup for MADV_FREE 2020-04-07 10:43:38 -07:00
mm_types.h mm: fix ambiguous comments for better code readability 2020-04-07 10:43:41 -07:00
mm_types_task.h
mman.h
mmdebug.h
mmiotrace.h
mmu_context.h
mmu_notifier.h
mmzone.h libnvdimm for 5.7 2020-04-08 21:03:40 -07:00
mnt_namespace.h
mod_devicetable.h Char/Misc driver patches for 5.7-rc1 2020-04-03 13:22:40 -07:00
module.h
module_signature.h
moduleloader.h
moduleparam.h
most.h
mount.h
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
n_r3964.h
namei.h
nd.h
ndctl.h
net.h
netdev_features.h net: introduce the MACSEC netdev feature 2020-03-26 20:17:36 -07:00
netdevice.h Merge git://git.kernel.org/pub/scm/linux/kernel/git/bpf/bpf-next 2020-03-30 19:52:37 -07: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: Clean up process of marking inode stale. 2020-04-06 13:56:33 -04:00
nfs_fs_i.h
nfs_fs_sb.h
nfs_iostat.h
nfs_page.h NFS: Try to join page groups before an O_DIRECT retransmission 2020-04-01 13:37:57 -04:00
nfs_xdr.h NFS client updates for Linux 5.7 2020-04-07 13:51:39 -07:00
nfsacl.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: Revert "add module to ops template to allow module references" 2020-04-04 09:09:39 +02:00
nvme-fc.h
nvme-rdma.h
nvme-tcp.h
nvme.h
nvmem-consumer.h
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
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: introduce Reported pages 2020-04-07 10:43:38 -07:00
page-isolation.h
page_counter.h
page_ext.h
page_idle.h
page_owner.h
page_ref.h mm: introduce page_ref_sub_return() 2020-04-02 09:35:27 -07:00
page_reporting.h mm/page_reporting: add budget limit on how many pages can be reported per pass 2020-04-07 10:43:39 -07:00
pageblock-flags.h
pagemap.h include/linux/pagemap.h: optimise find_subpage for !THP 2020-04-07 10:43:38 -07:00
pagevec.h
pagewalk.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/DPC: Add Error Disconnect Recover (EDR) support 2020-03-28 13:19:04 -05:00
pci-ats.h
pci-dma-compat.h
pci-ecam.h
pci-ep-cfs.h
pci-epc.h PCI: endpoint: Fix ->set_msix() to take BIR and offset as arguments 2020-04-02 17:57:10 +01:00
pci-epf.h PCI: dwc: Fix dw_pcie_ep_raise_msix_irq() to get correct MSI-X table address 2020-04-02 17:57:10 +01:00
pci-p2pdma.h
pci.h pci-v5.7-changes 2020-04-03 14:25:02 -07:00
pci_hotplug.h
pci_ids.h pci-v5.7-changes 2020-04-03 14:25:02 -07:00
pda_power.h
pe.h
percpu-defs.h
percpu-refcount.h
percpu-rwsem.h
percpu.h
percpu_counter.h percpu_counter: fix a data race at vm_committed_as 2020-04-07 10:43:43 -07:00
perf_event.h perf/core: Add PERF_SAMPLE_CGROUP feature 2020-03-27 10:41:44 -03:00
perf_regs.h
personality.h
pfn.h
pfn_t.h
phonet.h
phy.h
phy_fixed.h
phy_led_triggers.h
phylink.h net: phylink: add separate pcs operations structure 2020-03-30 11:52:27 -07:00
pid.h proc: Use a dedicated lock in struct pid 2020-04-09 12:15:35 -05:00
pid_namespace.h
pim.h
pipe_fs_i.h
pkeys.h
pktcdvd.h
pl320-ipc.h
pl353-smc.h
platform_device.h Revert "driver core: platform: Initialize dma_parms for platform devices" 2020-04-01 08:06:54 +02:00
plist.h
pm-trace.h
pm.h
pm2301_charger.h
pm_clock.h
pm_domain.h
pm_opp.h
pm_qos.h
pm_runtime.h
pm_wakeirq.h
pm_wakeup.h
pmbus.h
pmu.h
pnfs_osd_xdr.h
pnp.h pnp: Use list_for_each_entry() instead of open coding 2020-04-22 11:36:11 +02:00
poison.h
poll.h
posix-clock.h
posix-timers.h
posix_acl.h posix_acl.h: Replace zero-length array with flexible-array member 2020-04-18 15:44:55 -05:00
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: queue wake_up_klogd irq_work only if per-CPU areas are ready 2020-04-10 13:18:57 -07:00
proc_fs.h proc: faster open/read/close with "permanent" files 2020-04-07 10:43:42 -07:00
proc_ns.h Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/ebiederm/user-namespace 2020-04-02 11:22:17 -07:00
processor.h
profile.h
projid.h
property.h
psci.h
pseudo_fs.h
psi.h
psi_types.h
psp-sev.h
psp-tee.h
pstore.h
pstore_ram.h
ptdump.h
pti.h
ptp_classify.h
ptp_clock_kernel.h ptp: Avoid deadlocks in the programmable pin code. 2020-03-30 11:16:38 -07:00
ptr_ring.h
ptrace.h
purgatory.h
pvclock_gtod.h
pwm.h pwm: Implement some checks for lowlevel drivers 2020-03-30 16:55:26 +02:00
pwm_backlight.h
pxa2xx_ssp.h
pxa168_eth.h
qcom-geni-se.h
qcom_scm.h
qnx6_fs.h
quota.h
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
rbtree_latch.h
rcu_node_tree.h
rcu_segcblist.h
rcu_sync.h
rculist.h
rculist_bl.h
rculist_nulls.h
rcupdate.h
rcupdate_wait.h
rcutiny.h
rcutree.h
rcuwait.h
reboot-mode.h
reboot.h
reciprocal_div.h
refcount.h locking/refcount: Document interaction with PID_MAX_LIMIT 2020-04-08 12:05:07 +02:00
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 ring-buffer/tracing: Have iterator acknowledge dropped events 2020-03-27 16:39:01 -04:00
rio.h rio.h: Replace zero-length array with flexible-array member 2020-04-18 15:44:56 -05:00
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 rslib.h: Replace zero-length array with flexible-array member 2020-04-18 15:44:56 -05:00
rtc.h rtc: remove rtc_time_to_tm and rtc_tm_to_time 2020-04-02 18:47:30 +02:00
rtmutex.h
rtnetlink.h
rtsx_common.h
rtsx_pci.h
rtsx_usb.h
rwlock.h
rwlock_api_smp.h
rwlock_types.h
rwsem.h
s3c_adc_battery.h
sbitmap.h
scatterlist.h
scc.h
sched.h Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/ebiederm/user-namespace 2020-04-02 11:22:17 -07: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 Merge branch 'next-general' of git://git.kernel.org:/pub/scm/linux/kernel/git/jmorris/linux-security 2020-03-31 15:49:51 -07: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_file.h seq_file: remove m->version 2020-04-07 10:43:42 -07:00
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
sh_clk.h
sh_dma.h
sh_eth.h
sh_intc.h
sh_timer.h
shdma-base.h
shm.h
shmem_fs.h mm: remove CONFIG_TRANSPARENT_HUGE_PAGECACHE 2020-04-07 10:43:38 -07:00
shrinker.h
signal.h x86: get rid of put_user_try in __setup_rt_frame() (both 32bit and 64bit) 2020-03-26 14:41:22 -04:00
signal_types.h
signalfd.h
siox.h
siphash.h
sirfsoc_dma.h
sizes.h
skb_array.h
skbuff.h skbuff.h: Replace zero-length array with flexible-array member 2020-04-18 15:44:56 -05:00
skmsg.h
slab.h docs: mm: slab.h: fix a broken cross-reference 2020-04-10 15:36:20 -07: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 for-5.7/io_uring-2020-03-29 2020-03-30 12:18:49 -07:00
sonet.h
sony-laptop.h
sonypi.h
sort.h
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 kasan: stackdepot: move filter_irq_stacks() to stackdepot.c 2020-04-07 10:43:43 -07:00
stackleak.h
stackprotector.h
stacktrace.h
start_kernel.h
stat.h
statfs.h
static_key.h
stddef.h
stm.h
stmmac.h net: stmmac: Enable SERDES power up/down sequence 2020-04-21 15:54:45 -07:00
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
suspend.h
svga.h
sw842.h
swab.h
swait.h
swap.h swap.h: Replace zero-length array with flexible-array member 2020-04-18 15:44:56 -05:00
swap_cgroup.h
swap_slots.h
swapfile.h
swapops.h include/linux/swapops.h: correct guards for non_swap_entry() 2020-04-07 10:43:41 -07:00
swiotlb.h
switchtec.h
sxgbe_platform.h
sync_core.h
sync_file.h
synclink.h
sys.h
sys_soc.h
syscalls.h
syscore_ops.h
sysctl.h
sysfs.h sysfs: remove redundant __compat_only_sysfs_link_entry_to_kobj fn 2020-04-05 11:34:35 -07: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 mptcp: move option parsing into mptcp_incoming_options() 2020-04-30 12:23:22 -07:00
tee_drv.h
textsearch.h
textsearch_fsm.h
tfrc.h
thermal.h
thread_info.h
threads.h
thunderbolt.h
ti-emif-sram.h
ti_wilink_st.h ti_wilink_st.h: Replace zero-length array with flexible-array member 2020-04-18 15:44:56 -05:00
tick.h
tifm.h
timb_dma.h
timb_gpio.h
time.h
time32.h timekeeping and timer updates: 2020-03-30 18:51:47 -07:00
time64.h
time_namespace.h
timecounter.h
timekeeper_internal.h
timekeeping.h
timekeeping32.h
timer.h
timerfd.h
timeriomem-rng.h
timerqueue.h
timex.h
tnum.h bpf: Verifier, do explicit ALU32 bounds tracking 2020-03-30 14:59:53 -07:00
topology.h revert "topology: add support for node_to_mem_node() to determine the fallback node" 2020-04-02 09:35:26 -07:00
torture.h
toshiba.h
tpm.h
tpm_command.h
tpm_eventlog.h tpm_eventlog.h: Replace zero-length array with flexible-array member 2020-04-18 15:44:56 -05:00
trace.h
trace_clock.h
trace_events.h
trace_seq.h
tracefs.h
tracehook.h
tracepoint-defs.h
tracepoint.h tracing: Remove DECLARE_TRACE_NOARGS 2020-04-22 22:06:35 -04:00
transport_class.h
ts-nbus.h
tsacct_kern.h
tty.h
tty_driver.h
tty_flip.h
tty_ldisc.h
typecheck.h
types.h
u64_stats_sync.h
uacce.h
uaccess.h
ucb1400.h
ucs2_string.h
udp.h
uidgid.h
uio.h
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 userfaultfd: wp: support write protection for userfault vma range 2020-04-07 10:43:39 -07:00
util_macros.h
uts.h
utsname.h
uuid.h
vbox_utils.h
vdpa.h vdpa: allow a 32 bit vq alignment 2020-04-17 06:05:30 -04:00
verification.h
vermagic.h arch: split MODULE_ARCH_VERMAGIC definitions out to <asm/vermagic.h> 2020-04-23 10:50:26 +09:00
vexpress.h
vfio.h
vfs.h
vga_switcheroo.h
vgaarb.h
vhost_iotlb.h vhost: factor out IOTLB 2020-04-01 12:06:26 -04:00
via-core.h
via-gpio.h
via.h
via_i2c.h
videodev2.h
virtio.h virtio: drop vringh.h dependency 2020-04-17 06:05:30 -04:00
virtio_byteorder.h
virtio_caif.h
virtio_config.h
virtio_console.h
virtio_net.h
virtio_ring.h
virtio_vsock.h vsock/virtio: fix multiple packet delivery to monitoring devices 2020-04-27 10:18:01 -07:00
visorbus.h
vlynq.h
vm_event_item.h mm, thp: track fallbacks due to failed memcg charges separately 2020-04-07 10:43:38 -07:00
vmacache.h
vmalloc.h vmalloc: fix remap_vmalloc_range() bounds checks 2020-04-21 11:11:56 -07:00
vme.h
vmpressure.h
vmstat.h
vmw_vmci_api.h
vmw_vmci_defs.h
vringh.h virtio/test: fix up after IOTLB changes 2020-04-16 18:31:08 -04:00
vt.h
vt_buffer.h
vt_kern.h
vtime.h
w1-gpio.h
w1.h
wait.h
wait_bit.h
watchdog.h
win_minmax.h
wireless.h
wkup_m3_ipc.h
wl12xx.h
wm97xx.h
wmi.h
workqueue.h Merge branch 'for-5.7' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/wq 2020-04-03 12:27:36 -07:00
writeback.h
ww_mutex.h
xarray.h
xattr.h xattr.h: Replace zero-length array with flexible-array member 2020-04-18 15:44:56 -05:00
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