Kirill Smelkov
10dce8af34
fs: stream_open - opener for stream-like files so that read and write can run simultaneously without deadlock
...
Commit 9c225f2655 ("vfs: atomic f_pos accesses as per POSIX") added
locking for file.f_pos access and in particular made concurrent read and
write not possible - now both those functions take f_pos lock for the
whole run, and so if e.g. a read is blocked waiting for data, write will
deadlock waiting for that read to complete.
This caused regression for stream-like files where previously read and
write could run simultaneously, but after that patch could not do so
anymore. See e.g. commit 581d21a2d0 ("xenbus: fix deadlock on writes
to /proc/xen/xenbus") which fixes such regression for particular case of
/proc/xen/xenbus.
The patch that added f_pos lock in 2014 did so to guarantee POSIX thread
safety for read/write/lseek and added the locking to file descriptors of
all regular files. In 2014 that thread-safety problem was not new as it
was already discussed earlier in 2006.
However even though 2006'th version of Linus's patch was adding f_pos
locking "only for files that are marked seekable with FMODE_LSEEK (thus
avoiding the stream-like objects like pipes and sockets)", the 2014
version - the one that actually made it into the tree as 9c225f2655 -
is doing so irregardless of whether a file is seekable or not.
See
https://lore.kernel.org/lkml/53022DB1.4070805@gmail.com/
https://lwn.net/Articles/180387
https://lwn.net/Articles/180396
for historic context.
The reason that it did so is, probably, that there are many files that
are marked non-seekable, but e.g. their read implementation actually
depends on knowing current position to correctly handle the read. Some
examples:
kernel/power/user.c snapshot_read
fs/debugfs/file.c u32_array_read
fs/fuse/control.c fuse_conn_waiting_read + ...
drivers/hwmon/asus_atk0110.c atk_debugfs_ggrp_read
arch/s390/hypfs/inode.c hypfs_read_iter
...
Despite that, many nonseekable_open users implement read and write with
pure stream semantics - they don't depend on passed ppos at all. And for
those cases where read could wait for something inside, it creates a
situation similar to xenbus - the write could be never made to go until
read is done, and read is waiting for some, potentially external, event,
for potentially unbounded time -> deadlock.
Besides xenbus, there are 14 such places in the kernel that I've found
with semantic patch (see below):
drivers/xen/evtchn.c:667:8-24: ERROR: evtchn_fops: .read() can deadlock .write()
drivers/isdn/capi/capi.c:963:8-24: ERROR: capi_fops: .read() can deadlock .write()
drivers/input/evdev.c:527:1-17: ERROR: evdev_fops: .read() can deadlock .write()
drivers/char/pcmcia/cm4000_cs.c:1685:7-23: ERROR: cm4000_fops: .read() can deadlock .write()
net/rfkill/core.c:1146:8-24: ERROR: rfkill_fops: .read() can deadlock .write()
drivers/s390/char/fs3270.c:488:1-17: ERROR: fs3270_fops: .read() can deadlock .write()
drivers/usb/misc/ldusb.c:310:1-17: ERROR: ld_usb_fops: .read() can deadlock .write()
drivers/hid/uhid.c:635:1-17: ERROR: uhid_fops: .read() can deadlock .write()
net/batman-adv/icmp_socket.c:80:1-17: ERROR: batadv_fops: .read() can deadlock .write()
drivers/media/rc/lirc_dev.c:198:1-17: ERROR: lirc_fops: .read() can deadlock .write()
drivers/leds/uleds.c:77:1-17: ERROR: uleds_fops: .read() can deadlock .write()
drivers/input/misc/uinput.c:400:1-17: ERROR: uinput_fops: .read() can deadlock .write()
drivers/infiniband/core/user_mad.c:985:7-23: ERROR: umad_fops: .read() can deadlock .write()
drivers/gnss/core.c:45:1-17: ERROR: gnss_fops: .read() can deadlock .write()
In addition to the cases above another regression caused by f_pos
locking is that now FUSE filesystems that implement open with
FOPEN_NONSEEKABLE flag, can no longer implement bidirectional
stream-like files - for the same reason as above e.g. read can deadlock
write locking on file.f_pos in the kernel.
FUSE's FOPEN_NONSEEKABLE was added in 2008 in a7c1b990f7 ("fuse:
implement nonseekable open") to support OSSPD. OSSPD implements /dev/dsp
in userspace with FOPEN_NONSEEKABLE flag, with corresponding read and
write routines not depending on current position at all, and with both
read and write being potentially blocking operations:
See
https://github.com/libfuse/osspd
https://lwn.net/Articles/308445
14a9cff0/osspd.c (L1406)
14a9cff0/osspd.c (L1438-L1477)
14a9cff0/osspd.c (L1479-L1510)
Corresponding libfuse example/test also describes FOPEN_NONSEEKABLE as
"somewhat pipe-like files ..." with read handler not using offset.
However that test implements only read without write and cannot exercise
the deadlock scenario:
https://github.com/libfuse/libfuse/blob/fuse-3.4.2-3-ga1bff7d/example/poll.c#L124-L131
https://github.com/libfuse/libfuse/blob/fuse-3.4.2-3-ga1bff7d/example/poll.c#L146-L163
https://github.com/libfuse/libfuse/blob/fuse-3.4.2-3-ga1bff7d/example/poll.c#L209-L216
I've actually hit the read vs write deadlock for real while implementing
my FUSE filesystem where there is /head/watch file, for which open
creates separate bidirectional socket-like stream in between filesystem
and its user with both read and write being later performed
simultaneously. And there it is semantically not easy to split the
stream into two separate read-only and write-only channels:
f13aa600/wcfs/wcfs.go (L88-169)
Let's fix this regression. The plan is:
1. We can't change nonseekable_open to include &~FMODE_ATOMIC_POS -
doing so would break many in-kernel nonseekable_open users which
actually use ppos in read/write handlers.
2. Add stream_open() to kernel to open stream-like non-seekable file
descriptors. Read and write on such file descriptors would never use
nor change ppos. And with that property on stream-like files read and
write will be running without taking f_pos lock - i.e. read and write
could be running simultaneously.
3. With semantic patch search and convert to stream_open all in-kernel
nonseekable_open users for which read and write actually do not
depend on ppos and where there is no other methods in file_operations
which assume @offset access.
4. Add FOPEN_STREAM to fs/fuse/ and open in-kernel file-descriptors via
steam_open if that bit is present in filesystem open reply.
It was tempting to change fs/fuse/ open handler to use stream_open
instead of nonseekable_open on just FOPEN_NONSEEKABLE flags, but
grepping through Debian codesearch shows users of FOPEN_NONSEEKABLE,
and in particular GVFS which actually uses offset in its read and
write handlers
https://codesearch.debian.net/search?q=-%3Enonseekable+%3D
https://gitlab.gnome.org/GNOME/gvfs/blob/1.40.0-6-gcbc54396/client/gvfsfusedaemon.c#L1080
https://gitlab.gnome.org/GNOME/gvfs/blob/1.40.0-6-gcbc54396/client/gvfsfusedaemon.c#L1247-1346
https://gitlab.gnome.org/GNOME/gvfs/blob/1.40.0-6-gcbc54396/client/gvfsfusedaemon.c#L1399-1481
so if we would do such a change it will break a real user.
5. Add stream_open and FOPEN_STREAM handling to stable kernels starting
from v3.14+ (the kernel where 9c225f2655 first appeared).
This will allow to patch OSSPD and other FUSE filesystems that
provide stream-like files to return FOPEN_STREAM | FOPEN_NONSEEKABLE
in their open handler and this way avoid the deadlock on all kernel
versions. This should work because fs/fuse/ ignores unknown open
flags returned from a filesystem and so passing FOPEN_STREAM to a
kernel that is not aware of this flag cannot hurt. In turn the kernel
that is not aware of FOPEN_STREAM will be < v3.14 where just
FOPEN_NONSEEKABLE is sufficient to implement streams without read vs
write deadlock.
This patch adds stream_open, converts /proc/xen/xenbus to it and adds
semantic patch to automatically locate in-kernel places that are either
required to be converted due to read vs write deadlock, or that are just
safe to be converted because read and write do not use ppos and there
are no other funky methods in file_operations.
Regarding semantic patch I've verified each generated change manually -
that it is correct to convert - and each other nonseekable_open instance
left - that it is either not correct to convert there, or that it is not
converted due to current stream_open.cocci limitations.
The script also does not convert files that should be valid to convert,
but that currently have .llseek = noop_llseek or generic_file_llseek for
unknown reason despite file being opened with nonseekable_open (e.g.
drivers/input/mousedev.c)
Cc: Michael Kerrisk <mtk.manpages@gmail.com>
Cc: Yongzhi Pan <panyongzhi@gmail.com>
Cc: Jonathan Corbet <corbet@lwn.net>
Cc: David Vrabel <david.vrabel@citrix.com>
Cc: Juergen Gross <jgross@suse.com>
Cc: Miklos Szeredi <miklos@szeredi.hu>
Cc: Tejun Heo <tj@kernel.org>
Cc: Kirill Tkhai <ktkhai@virtuozzo.com>
Cc: Arnd Bergmann <arnd@arndb.de>
Cc: Christoph Hellwig <hch@lst.de>
Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Cc: Julia Lawall <Julia.Lawall@lip6.fr>
Cc: Nikolaus Rath <Nikolaus@rath.org>
Cc: Han-Wen Nienhuys <hanwen@google.com>
Signed-off-by: Kirill Smelkov <kirr@nexedi.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2019-04-06 07:01:55 -10:00
..
amba
ARM: 8836/1: drivers: amba: Update component matching to use the CoreSight UCI values.
2019-02-26 11:23:49 +00:00
avf
bcma
wireless-drivers-next patches for 5.1
2019-02-06 09:36:36 -08:00
byteorder
can
ceph
libceph: wait for latest osdmap in ceph_monc_blacklist_add()
2019-03-20 16:27:40 +01:00
clk
clk: ti: add a usecount for autoidle
2019-02-15 16:47:55 +02:00
crush
decompress
dma
dsa
extcon
firmware
i.MX drivers update for 5.1:
2019-02-15 17:17:57 +01:00
fpga
fsl
ARM: SoC driver updates for 5.1
2019-03-06 09:41:12 -08:00
gpio
Merge branch 'ib-pca953x-config' into devel
2019-02-14 08:45:22 +01:00
hsi
i3c
iio
iio: st_accel: use ACPI orientation data
2019-02-02 09:28:51 +00:00
input
Input: ili210x - drop platform data support
2019-02-06 22:17:42 -08:00
irqchip
irqchip updates for 5.1, take #2
2019-03-21 12:30:54 +01:00
isdn
lockd
mailbox
mailbox: ZynqMP IPI mailbox controller
2019-03-06 20:34:20 -06:00
mfd
- New Drivers
2019-03-08 10:02:58 -08:00
mlx4
mlx5
net/mlx5e: Add a lock on tir list
2019-03-29 12:24:41 -07:00
mmc
mmc: core: Add discard support to sd
2019-02-28 09:16:12 +01:00
mtd
NAND core changes:
2019-02-25 09:28:54 +01:00
mux
netfilter
netfilter: convert the proto argument from u8 to u16
2019-03-01 14:28:43 +01:00
netfilter_arp
netfilter_bridge
netfilter_ipv4
netfilter_ipv6
perf
phy
phy: dphy: Clarify lanes parameter documentation
2019-02-07 11:11:05 +05:30
pinctrl
pinctrl: remove unused 'pinconf-config' debugfs interface
2019-01-28 14:39:52 +01:00
platform_data
gpio: amd-fch: Fix bogus SPDX identifier
2019-03-22 16:48:47 +01:00
power
qed
qed: Add API for SmartAN query.
2019-02-08 22:39:01 -08:00
raid
regulator
regulator: core: Add set/get_current_limit helpers for regmap users
2019-03-03 23:45:27 +00:00
remoteproc
reset
reset: socfpga: declare socfpga_reset_init in a header file
2019-01-28 11:16:04 +01:00
rpmsg
rtc
sched
ptrace: take into account saved_sigmask in PTRACE{GET,SET}SIGMASK
2019-03-29 10:01:37 -07:00
soc
qcom: soc: llcc-slice: Clear the global drv_data pointer on error
2019-02-12 15:27:14 -06:00
soundwire
spi
spi: support inter-word delay requirement for devices
2019-01-30 23:02:10 +00:00
ssb
sunrpc
SUNRPC: Micro-optimise when the task is known not to be sleeping
2019-03-10 14:08:19 -04:00
ulpi
unaligned
usb
wusb: Remove unnecessary static function ckhdid_printf
2019-03-01 20:53:41 +01:00
uwb
wimax
8250_pci.h
a.out.h
acct.h
acpi.h
device-dax for 5.1
2019-03-16 13:05:32 -07:00
acpi_dma.h
acpi_iort.h
acpi_pmtmr.h
adb.h
adfs_fs.h
adxl.h
aer.h
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
arm-cci.h
arm-smccc.h
arm_sdei.h
ACPI / APEI: Add support for the SDEI GHES Notification type
2019-02-11 11:07:49 +01:00
ascii85.h
asn1.h
asn1_ber_bytecode.h
asn1_decoder.h
assoc_array.h
assoc_array_priv.h
async.h
async: Add support for queueing on specific NUMA node
2019-01-31 14:20:54 +01:00
async_tx.h
ata.h
ata_platform.h
ata: pata_of_platform: Allow to use 16-bit wide data transfer
2019-02-08 06:42:53 -07:00
atalk.h
appletalk: Fix potential NULL pointer dereference in unregister_snap_client
2019-03-15 11:25:48 -07:00
ath9k_platform.h
atm.h
atm_suni.h
atm_tcp.h
atmdev.h
atmel-mci.h
atmel-ssc.h
atmel_pdc.h
atmel_tc.h
atomic-fallback.h
locking/atomics: Check atomic headers with sha1sum
2019-02-13 08:07:31 +01:00
atomic.h
attribute_container.h
audit.h
audit: hide auditsc_get_stamp and audit_serial prototypes
2019-02-07 21:44:27 -05:00
auto_dev-ioctl.h
auto_fs.h
auxvec.h
average.h
b1pcmcia.h
backing-dev-defs.h
writeback: synchronize sync(2) against cgroup writeback membership switches
2019-01-22 14:39:38 -07:00
backing-dev.h
writeback: fix inode cgroup switching comment
2019-03-05 21:07:21 -08:00
backlight.h
badblocks.h
balloon_compaction.h
mm: convert PG_balloon to PG_offline
2019-03-05 21:07:14 -08:00
bcd.h
bch.h
bcm47xx_nvram.h
bcm47xx_sprom.h
bcm47xx_wdt.h
bcm963xx_nvram.h
bcm963xx_tag.h
binfmts.h
bio.h
block: add bio_set_polled() helper
2019-02-24 08:20:17 -07:00
bit_spinlock.h
bitfield.h
bitmap.h
bitops.h
include/linux/bitops.h: set_mask_bits() to return old value
2019-03-07 18:32:00 -08:00
bitrev.h
include/linux/bitrev.h: fix constant bitrev
2019-04-05 16:02:30 -10:00
bits.h
blk-cgroup.h
blk-mq-pci.h
blk-mq-rdma.h
blk-mq-virtio.h
blk-mq.h
block: Unexport blk_mq_add_to_requeue_list()
2019-03-20 14:19:36 -06:00
blk-pm.h
blk_types.h
block: add BIO_NO_PAGE_REF flag
2019-03-18 10:44:48 -06:00
blkdev.h
block: add BLK_MQ_POLL_CLASSIC for hybrid poll and return EINVAL for unexpected value
2019-03-20 14:02:07 -06:00
blkpg.h
blktrace_api.h
blktrace: Show requests without sector
2019-02-07 12:57:17 -07:00
blockgroup_lock.h
bma150.h
bottom_half.h
bpf-cgroup.h
bpf: fix warning about using plain integer as NULL
2019-03-08 21:17:07 +01:00
bpf.h
bpf: Fix bpf_tcp_sock and bpf_sk_fullsock issue related to bpf_sk_release
2019-03-13 12:04:35 -07:00
bpf_lirc.h
bpf_trace.h
bpf_types.h
bpf: BPF_PROG_TYPE_CGROUP_{SKB, SOCK, SOCK_ADDR} require cgroups enabled
2019-01-31 10:13:21 +01:00
bpf_verifier.h
bpf: Fix bpf_tcp_sock and bpf_sk_fullsock issue related to bpf_sk_release
2019-03-13 12:04:35 -07:00
bpfilter.h
brcmphy.h
net: phy: bcm54xx: Encode link speed and activity into LEDs
2019-03-26 11:24:47 -07:00
bsearch.h
bsg-lib.h
scsi: bsg-lib: handle bidi requests without block layer help
2019-02-05 21:27:40 -05:00
bsg.h
btf.h
bpf: introduce bpf_spin_lock
2019-02-01 20:55:38 +01:00
btree-128.h
btree-type.h
btree.h
btrfs.h
buffer_head.h
bug.h
build-salt.h
build_bug.h
build_bug.h: add wrapper for _Static_assert
2019-03-07 18:31:59 -08:00
bvec.h
block: optimize bvec iteration in bvec_iter_advance
2019-02-28 13:49:22 -07:00
c2port.h
cache.h
cacheinfo.h
capability.h
audit/stable-5.1 PR 20190305
2019-03-07 12:20:11 -08:00
cb710.h
cciss_ioctl.h
ccp.h
cdev.h
cdrom.h
cfag12864b.h
cgroup-defs.h
Merge branch 'for-5.1' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/cgroup
2019-03-07 10:11:41 -08:00
cgroup.h
cgroup/pids: turn cgroup_subsys->free() into cgroup_subsys->release() to fix the accounting
2019-01-31 06:55:57 -08:00
cgroup_rdma.h
cgroup_subsys.h
circ_buf.h
cleancache.h
clk-provider.h
clk: fractional-divider: check parent rate only if flag is set
2019-02-22 00:11:47 -08:00
clk.h
clk: Add (devm_)clk_get_optional() functions
2019-02-06 10:33:10 -08:00
clkdev.h
clkdev: add managed clkdev lookup registration
2019-02-06 10:35:02 -08:00
clock_cooling.h
clockchips.h
clocksource.h
cm4000_cs.h
cma.h
cmdline-parser.h
cn_proc.h
cnt32_to_63.h
coda.h
coda_psdev.h
compaction.h
include/linux/compaction.h: fix potential build error
2019-03-05 21:07:20 -08:00
compat.h
y2038: syscalls: rename y2038 compat syscalls
2019-02-07 00:13:27 +01:00
compiler-clang.h
compiler-gcc.h
compiler-intel.h
compiler.h
compiler_attributes.h
Compiler Attributes: add support for __copy (gcc >= 9)
2019-02-15 19:52:17 +01:00
compiler_types.h
completion.h
component.h
drivers/component: kerneldoc polish
2019-02-19 13:20:35 +01:00
concap.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
coresight: perf: Add "sinks" group to PMU directory
2019-02-08 12:27:36 +01:00
count_zeros.h
cper.h
cpu.h
cpu/hotplug: Fix "SMT disabled by BIOS" detection for KVM
2019-01-30 19:27:00 +01:00
cpu_cooling.h
cpu_pm.h
cpu_rmap.h
cpufeature.h
cpufreq.h
cpufreq: Allow light-weight tear down and bring up of CPUs
2019-02-12 23:47:42 +01:00
cpuhotplug.h
clocksource/drivers/tegra: Add Tegra210 timer support
2019-02-23 12:13:45 +01:00
cpuidle.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: clarify name of WEAK_KEY request flag
2019-01-25 18:41:52 +08:00
cryptohash.h
cs5535.h
ctype.h
cuda.h
cyclades.h
davinci_emac.h
dax.h
dca.h
dcache.h
fs/dcache: Track & report number of negative dentries
2019-01-30 11:02:11 -08:00
dccp.h
dcookies.h
debug_locks.h
debugfs.h
debugobjects.h
delay.h
init/calibrate.c: provide proper prototype
2019-03-07 18:32:01 -08:00
delayacct.h
delayed_call.h
devcoredump.h
devfreq-event.h
devfreq.h
devfreq_cooling.h
device-mapper.h
dm: add support to directly boot to a mapped device
2019-03-05 14:53:50 -05:00
device.h
driver core: remove BUS_ATTR()
2019-03-18 07:07:30 +01:00
device_cgroup.h
devpts_fs.h
digsig.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-direction.h
dma-fence-array.h
dma-fence.h
dma-iommu.h
dma-mapping.h
virtio: fixes, cleanups
2019-03-10 12:47:57 -07:00
dma-noncoherent.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_debug: refactor dynamic_pr_debug and friends
2019-03-07 18:32:00 -08:00
dynamic_queue_limits.h
earlycpio.h
ecryptfs.h
edac.h
edd.h
edma.h
eeprom_93cx6.h
eeprom_93xx46.h
efi-bgrt.h
efi.h
arm64 updates for 5.1:
2019-03-10 10:17:23 -07: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
err.h
errno.h
vfs: Add configuration parser helpers
2019-02-28 03:28:53 -05:00
error-injection.h
errqueue.h
errseq.h
etherdevice.h
net/ethernet: Add parse_protocol header_ops support
2019-02-22 12:55:31 -08:00
ethtool.h
net: phy: improve definition of __ETHTOOL_LINK_MODE_MASK_NBITS
2019-02-24 17:33:59 -08:00
eventfd.h
eventpoll.h
evm.h
export.h
exportfs.h
ext2_fs.h
extable.h
extcon-provider.h
extcon.h
f2fs_fs.h
f2fs: correct spelling mistake
2019-03-12 18:59:17 -07:00
f75375s.h
falloc.h
fanotify.h
fanotify: report FAN_ONDIR to listener with FAN_REPORT_FID
2019-02-07 16:47:32 +01:00
fault-inject.h
fb.h
fbcon.h
fcdevice.h
fcntl.h
32-bit userspace ABI: introduce ARCH_32BIT_OFF_T config option
2019-02-19 10:10:05 +01:00
fd.h
fddidevice.h
fdtable.h
fec.h
file.h
fs: add fget_many() and fput_many()
2019-02-28 08:24:23 -07:00
filter.h
Merge branch 'perf-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip
2019-03-06 07:59:36 -08:00
fips.h
firewire.h
firmware-map.h
firmware.h
fixp-arith.h
flat.h
flex_proportions.h
fmc-sdb.h
fmc.h
font.h
frame.h
freezer.h
frontswap.h
mm: rid swapoff of quadratic complexity
2019-03-05 21:07:18 -08:00
fs.h
fs: stream_open - opener for stream-like files so that read and write can run simultaneously without deadlock
2019-04-06 07:01:55 -10:00
fs_context.h
vfs: Implement logging through fs_context
2019-02-28 03:29:37 -05:00
fs_enet_pd.h
fs_parser.h
vfs: Add configuration parser helpers
2019-02-28 03:28:53 -05:00
fs_pin.h
fs_stack.h
fs_struct.h
fs_types.h
fs_uart_pd.h
fscache-cache.h
fscache.h
fscrypt.h
fscrypt: return -EXDEV for incompatible rename or link into encrypted dir
2019-01-23 23:56:43 -05: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
fanotify: check FS_ISDIR flag instead of d_is_dir()
2019-02-07 16:38:36 +01:00
fsnotify_backend.h
fsnotify: Create function to remove event from notification list
2019-02-18 12:41:16 +01:00
ftrace.h
ftrace_irq.h
futex.h
fwnode.h
gameport.h
gcd.h
genalloc.h
generic-radix-tree.h
generic radix trees
2019-03-12 10:04:02 -07:00
genetlink.h
genhd.h
genl_magic_func.h
genl_magic_struct.h
getcpu.h
gfp.h
mm: shuffle GFP_* flags
2019-03-05 21:07:16 -08:00
glob.h
gnss.h
gnss: add mtk receiver type support
2019-02-15 16:54:38 +01:00
goldfish.h
gpio-pxa.h
gpio.h
gpio_keys.h
hardirq.h
arm64: Fix HCR.TGE status for NMI contexts
2019-02-06 10:05:16 +00:00
hash.h
hashtable.h
hdlc.h
hdlcdrv.h
hdmi.h
video/hdmi: Add an enum for HDMI packet types
2019-01-25 19:35:20 +02:00
hid-debug.h
HID: debug: fix the ring buffer implementation
2019-01-29 12:09:11 +01:00
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: convert to use vm_fault_t
2019-03-12 10:04:00 -07:00
host1x.h
hp_sdc.h
hpet.h
hrtimer.h
htcpld.h
huge_mm.h
hugetlb.h
include/linux/hugetlb.h: convert to use vm_fault_t
2019-03-29 10:01:37 -07: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: Expose counters for interrupts and full conditions
2019-02-14 20:56:10 -05:00
hypervisor.h
i2c-algo-bit.h
i2c: algo-bit: convert to SPDX header
2019-02-05 14:05:03 +01:00
i2c-algo-pca.h
i2c-algo-pcf.h
i2c-dev.h
i2c-mux.h
i2c-pxa.h
i2c-smbus.h
i2c.h
i2c: Allow recovery of the initial IRQ by an I2C client device.
2019-02-24 14:43:22 +01:00
i8042.h
i8253.h
icmp.h
icmpv6.h
ide.h
ide: ensure atapi sense request aren't preempted
2019-01-31 08:25:09 -07:00
idle_inject.h
idr.h
ieee80211.h
wireless-drivers-next patches for 5.1
2019-02-22 12:56:24 -08:00
ieee802154.h
if_arp.h
net: dev_is_mac_header_xmit() true for ARPHRD_RAWIP
2019-01-24 22:45:34 -08:00
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_tap.h
if_team.h
if_tun.h
if_tunnel.h
if_vlan.h
igmp.h
ip: fix ip_mc_may_pull() return value
2019-03-09 19:52:47 -08:00
ihex.h
ihex: Simplify next record offset calculation
2019-01-22 10:23:17 +01:00
ima.h
ima: define ima_post_create_tmpfile() hook and add missing call
2019-02-04 17:36:01 -05:00
imx-media.h
in.h
bridge: Snoop Multicast Router Advertisements
2019-01-22 17:18:09 -08:00
in6.h
indirect_call_wrapper.h
inet.h
inet_diag.h
inetdevice.h
init.h
init_ohci1394_dma.h
init_task.h
sched/core: Convert task_struct.stack_refcount to refcount_t
2019-02-04 08:53:56 +01:00
initrd.h
inotify.h
input-polldev.h
input.h
integrity.h
intel-iommu.h
intel-pti.h
intel-svm.h
interconnect-provider.h
interconnect: Allow endpoints translation via DT
2019-01-22 13:37:25 +01:00
interconnect.h
interconnect: Allow endpoints translation via DT
2019-01-22 13:37:25 +01:00
interrupt.h
irqchip updates for Linux 5.1
2019-02-23 10:53:31 +01:00
interval_tree.h
interval_tree_generic.h
io-64-nonatomic-hi-lo.h
io-64-nonatomic: add io{read|write}64[be]{_lo_hi|_hi_lo} macros
2019-01-22 13:39:59 +01:00
io-64-nonatomic-lo-hi.h
io-64-nonatomic: add io{read|write}64[be]{_lo_hi|_hi_lo} macros
2019-01-22 13:39:59 +01:00
io-mapping.h
io-pgtable.h
iommu: Allow io-pgtable to be used outside of drivers/iommu/
2019-02-11 11:26:48 +01:00
io.h
ioc3.h
ioc4.h
iocontext.h
iomap.h
iomap: wire up the iopoll method
2019-02-24 08:20:17 -07:00
iommu-helper.h
iommu.h
Merge branches 'iommu/fixes', 'arm/msm', 'arm/tegra', 'arm/mediatek', 'x86/vt-d', 'x86/amd', 'hyper-v' and 'core' into next
2019-03-01 11:24:51 +01:00
iopoll.h
ioport.h
ioprio.h
iova.h
ip.h
bridge: simplify ip_mc_check_igmp() and ipv6_mc_check_mld() calls
2019-01-22 17:18:08 -08:00
ipack.h
ipc.h
ipc_namespace.h
ipmi-fru.h
ipmi.h
ipmi_smi.h
ipmi: Make the smi watcher be disabled immediately when not needed
2019-02-09 19:48:42 -06:00
ipv6.h
net: ipv6: add socket option IPV6_ROUTER_ALERT_ISOLATE
2019-03-03 21:05:10 -08:00
ipv6_route.h
irq.h
genirq: Fix typo in comment of IRQD_MOVE_PCNTXT
2019-03-21 11:52:37 +01:00
irq_cpustat.h
irq_poll.h
irq_sim.h
irq_work.h
irqbypass.h
irqchip.h
irqdesc.h
irqchip updates for Linux 5.1
2019-02-23 10:53:31 +01:00
irqdomain.h
This is the bulk of GPIO changes for the v5.1 cycle:
2019-03-08 10:09:53 -08:00
irqflags.h
irqhandler.h
irqnr.h
irqreturn.h
isa.h
isapnp.h
iscsi_boot_sysfs.h
iscsi_ibft.h
isdn.h
isdn_divertif.h
isdn_ppp.h
isdnif.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: fix kasan_check_read/write definitions
2019-03-05 21:07:13 -08:00
kasan.h
kbd_diacr.h
kbd_kern.h
kbuild.h
kconfig.h
kcore.h
Linux 5.1-rc2
2019-03-28 10:58:28 +01:00
kcov.h
kd.h
kdb.h
kdebug.h
kdev_t.h
kern_levels.h
printk: Remove no longer used LOG_PREFIX.
2019-03-04 13:42:05 +01:00
kernel-page-flags.h
kernel.h
linux/kernel.h: split *_MAX and *_MIN macros into <linux/limits.h>
2019-03-07 18:31:59 -08:00
kernel_stat.h
kernelcapi.h
kernfs.h
Merge branch 'work.mount' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs
2019-03-12 14:08:19 -07:00
kexec.h
key-type.h
keys: Fix dependency loop between construction record and auth key
2019-02-15 14:12:09 -08: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
x86/hw_breakpoints, kprobes: Remove kprobes ifdeffery
2019-01-30 11:52:21 +01:00
kref.h
ks0108.h
ks8842.h
ks8851_mll.h
ksm.h
mm: reuse only-pte-mapped KSM page in do_wp_page()
2019-03-05 21:07:15 -08:00
kthread.h
Merge branch 'sched-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip
2019-03-06 08:14:05 -08:00
ktime.h
kvm_host.h
KVM: Expose the initial start value in grow_halt_poll_ns() as a module parameter
2019-02-20 22:48:50 +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.h
leds_pwm.h
libata.h
scsi: ata: Use unsigned int for cmd's type in ioctls in scsi_host_template
2019-02-08 17:33:00 -05:00
libfdt.h
libfdt_env.h
libgcc.h
libnvdimm.h
device-dax for 5.1
2019-03-16 13:05:32 -07:00
libps2.h
license.h
lightnvm.h
limits.h
linux/kernel.h: split *_MAX and *_MIN macros into <linux/limits.h>
2019-03-07 18:31:59 -08:00
linkage.h
linkmode.h
linux_logo.h
lis3lv02d.h
list.h
include/linux/list.h: fix list_is_first() kernel-doc
2019-03-29 10:01:37 -07:00
list_bl.h
list_lru.h
list_nulls.h
list_sort.h
livepatch.h
llc.h
llist.h
lockdep.h
locking/lockdep: Shrink struct lock_class_key
2019-02-28 07:55:53 +01:00
lockref.h
log2.h
logic_pio.h
lp.h
lru_cache.h
lsm_audit.h
lsm_hooks.h
Merge branch 'work.mount' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs
2019-03-12 14:08:19 -07:00
lz4.h
lzo.h
lib/lzo: separate lzo-rle from lzo
2019-03-07 18:32:03 -08:00
mailbox_client.h
mailbox_controller.h
maple.h
marvell_phy.h
net: phy: marvell10g: add support for the 88x2110 PHY
2019-02-24 17:45:25 -08:00
math64.h
max17040_battery.h
mbcache.h
mbus.h
mc6821.h
mc146818rtc.h
mcb.h
mdev.h
vfio-mdev: Switch to use new generic UUID API
2019-02-05 11:51:56 -07:00
mdio-bitbang.h
mdio-gpio.h
mdio-mux.h
mdio.h
net: phy: add helper mii_10gbt_stat_mod_linkmode_lpa_t
2019-02-18 16:43:54 -08:00
mei_cl_bus.h
mei: bus: export to_mei_cl_device for mei client devices drivers
2019-02-12 10:38:46 +01:00
mem_encrypt.h
memblock.h
memblock: remove memblock_{set,clear}_region_flags
2019-03-12 10:04:02 -07:00
memcontrol.h
mm: writeback: use exact memcg dirty counts
2019-04-05 16:02:31 -10:00
memfd.h
memory.h
memory_hotplug.h
xen: fixes and features for 5.1-rc1
2019-03-11 17:08:14 -07:00
mempolicy.h
mempool.h
memremap.h
memstick.h
mic_bus.h
micrel_phy.h
microchipphy.h
migrate.h
migrate_mode.h
mii.h
net: mii: Fix PAUSE cap advertisement from linkmode_adv_to_lcl_adv_t() helper
2019-03-27 22:49:06 -07:00
miscdevice.h
mISDNdsp.h
mISDNhw.h
mISDNif.h
mm-arch-hooks.h
mm.h
mm: refactor readahead defines in mm.h
2019-03-12 10:04:01 -07:00
mm_inline.h
mm_types.h
mm: fix vm_fault_t cast in VM_FAULT_GET_HINDEX()
2019-04-05 16:02:31 -10:00
mm_types_task.h
mman.h
mmdebug.h
mmiotrace.h
mmu_context.h
mmu_notifier.h
mmzone.h
mm: remove zone_lru_lock() function, access ->lru_lock directly
2019-03-05 21:07:21 -08:00
mnt_namespace.h
mod_devicetable.h
platform-drivers-x86 for v5.1-1
2019-03-10 13:16:37 -07:00
module.h
A fairly routine cycle for docs - lots of typo fixes, some new documents,
2019-03-09 09:56:17 -08:00
moduleloader.h
moduleparam.h
mount.h
new helpers: vfs_create_mount(), fc_mount()
2019-01-30 17:44:24 -05:00
mpage.h
mpi.h
mpls.h
mpls_iptunnel.h
mroute.h
mroute6.h
mroute_base.h
msdos_fs.h
msg.h
msi.h
genirq/msi: Clean up usage of __u8/__u16 types
2019-02-08 13:30:10 -06:00
mutex.h
mv643xx.h
mv643xx_eth.h
mv643xx_i2c.h
mvebu-pmsu.h
mxm-wmi.h
n_r3964.h
namei.h
audit: ignore fcaps on umount
2019-01-30 20:51:47 -05:00
nd.h
ndctl.h
net.h
net: add documentation to socket.c
2019-03-15 15:29:47 -07:00
net_dim.h
netdev_features.h
net: Add header for usage of fls64()
2019-02-16 13:45:01 -08:00
netdevice.h
Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net
2019-03-02 12:54:35 -08:00
netfilter.h
netfilter_bridge.h
netfilter_defs.h
netfilter_ingress.h
netfilter_ipv4.h
netfilter: ipv4: remove useless export_symbol
2019-01-28 11:32:58 +01:00
netfilter_ipv6.h
netfilter: ipv6: avoid indirect calls for IPV6=y case
2019-02-04 18:21:12 +01:00
netlink.h
netpoll.h
nfs.h
nfs3.h
nfs4.h
NFSv4.2: Add client support for the generic 'layouterror' RPC call
2019-03-01 16:20:16 -05:00
nfs_fs.h
nfs_fs_i.h
nfs_fs_sb.h
NFSv4.2: Add client support for the generic 'layouterror' RPC call
2019-03-01 16:20:16 -05:00
nfs_iostat.h
nfs_page.h
NFS: Clean up list moves of struct nfs_page
2019-02-20 15:14:20 -05:00
nfs_xdr.h
NFSv4.2: Add client support for the generic 'layouterror' RPC call
2019-03-01 16:20:16 -05:00
nfsacl.h
nl802154.h
nls.h
nmi.h
node.h
nodemask.h
numa: make "nr_online_nodes" unsigned int
2019-03-05 21:07:20 -08:00
nospec.h
notifier.h
ns_common.h
nsc_gpio.h
nsproxy.h
ntb.h
NTB: add new parameter to peer_db_addr() db_bit and db_data
2019-02-13 11:03:18 -05:00
ntb_transport.h
nubus.h
numa.h
nvme-fc-driver.h
nvme-fc: convert to SPDX identifiers
2019-02-20 07:22:17 -07:00
nvme-fc.h
nvme-fc: convert to SPDX identifiers
2019-02-20 07:22:17 -07:00
nvme-rdma.h
nvme-rdma: convert to SPDX identifiers
2019-02-20 07:22:19 -07:00
nvme-tcp.h
nvme-tcp.h: fix SPDX header
2019-02-20 07:22:10 -07:00
nvme.h
nvme_ioctl.h: remove duplicate GPL boilerplate
2019-02-20 07:22:05 -07:00
nvmem-consumer.h
nvmem-provider.h
nvram.h
powerpc: Enable HAVE_ARCH_NVRAM_OPS and disable GENERIC_NVRAM
2019-01-22 10:21:45 +01:00
objagg.h
lib: objagg: add root count to stats
2019-02-08 15:02:49 -08:00
of.h
of_address.h
of_clk.h
of_device.h
of_dma.h
of_fdt.h
of_gpio.h
gpio: add core support for pull-up/pull-down configuration
2019-02-13 09:10:14 +01:00
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
of: mark early_init_dt_alloc_reserved_memory_arch static
2019-02-28 11:40:49 -06:00
oid_registry.h
olpc-ec.h
omap-dma.h
omap-dmaengine.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
oxu210hp.h
padata.h
page-flags-layout.h
page-flags.h
mm: better document PG_reserved
2019-03-05 21:07:19 -08:00
page-isolation.h
mm/hotplug: fix offline undo_isolate_page_range()
2019-03-29 10:01:37 -07:00
page_counter.h
page_ext.h
page_idle.h
page_owner.h
page_ref.h
pageblock-flags.h
pagemap.h
filemap: kill page_cache_read usage in filemap_fault
2019-03-15 11:21:25 -07:00
pagevec.h
parman.h
parport.h
Revert "parport: daisy: use new parport device model"
2019-03-25 14:49:00 -07:00
parport_pc.h
parser.h
pata_arasan_cf_data.h
patchkey.h
path.h
pch_dma.h
pci-acpi.h
pci-aspm.h
pci-ats.h
PCI/ATS: Add inline to pci_prg_resp_pasid_required()
2019-02-28 11:09:29 +01:00
pci-dma-compat.h
pci-ecam.h
pci-ep-cfs.h
pci-epc.h
PCI: endpoint: Remove features member in struct pci_epc
2019-02-15 10:03:35 +00:00
pci-epf.h
pci-p2pdma.h
pci.h
IOMMU Updates for Linux v5.1
2019-03-10 12:29:52 -07:00
pci_hotplug.h
pci_ids.h
PCI: Move Rohm Vendor ID to generic list
2019-02-01 17:24:52 -06:00
pda_power.h
pe.h
percpu-defs.h
percpu-refcount.h
percpu-rwsem.h
locking/percpu-rwsem: Remove preempt_disable variants
2019-02-28 07:55:37 +01:00
percpu.h
percpu_counter.h
perf_event.h
perf/core improvements and fixes:
2019-02-28 08:29:50 +01:00
perf_regs.h
personality.h
pfn.h
pfn_t.h
phonet.h
phy.h
net: phy: remove gen10g_no_soft_reset
2019-03-03 21:47:57 -08:00
phy_fixed.h
net: fixed-phy: Add fixed_phy_register_with_gpiod() API
2019-02-07 18:11:58 -08:00
phy_led_triggers.h
phylink.h
net: phylink: update mac_config() documentation
2019-02-24 12:39:45 -08:00
pid.h
include/linux/pid.h: remove next_pidmap() declaration
2019-03-07 18:31:59 -08:00
pid_namespace.h
pim.h
pipe_fs_i.h
pipe: stop using ->can_merge
2019-02-01 02:01:45 -05:00
pkeys.h
pktcdvd.h
pl320-ipc.h
pl353-smc.h
platform_device.h
This is the bulk of GPIO changes for the v5.1 cycle:
2019-03-08 10:09:53 -08:00
plist.h
pm-trace.h
pm.h
PM-runtime: Call pm_runtime_active|suspended_time() from sysfs
2019-03-07 11:23:17 +01:00
pm2301_charger.h
pm_clock.h
pm_domain.h
PM / Domains: Mark "name" const in dev_pm_domain_attach_by_name()
2019-02-15 11:36:38 +01:00
pm_opp.h
Power management updates for 5.1-rc1
2019-03-06 12:59:46 -08:00
pm_qos.h
pm_runtime.h
driver core: Fix PM-runtime for links added during consumer probe
2019-02-20 11:18:07 +01:00
pm_wakeirq.h
pm_wakeup.h
PM / wakeup: Drop wakeup_source_drop()
2019-03-12 09:43:00 +01:00
pmbus.h
pmu.h
pnfs_osd_xdr.h
pnp.h
poison.h
Drop flex_arrays
2019-03-12 10:04:03 -07:00
poll.h
posix-clock.h
timex: use __kernel_timex internally
2019-02-07 00:13:27 +01:00
posix-timers.h
posix_acl.h
posix_acl_xattr.h
power_supply.h
power: supply: core: Add a field to support battery max voltage
2019-02-20 00:33:08 +01:00
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 changes for 5.1
2019-03-09 09:22:42 -08:00
proc_fs.h
signal: add pidfd_send_signal() syscall
2019-03-05 17:03:53 +01:00
proc_ns.h
processor.h
profile.h
projid.h
property.h
device property: Fix the length used in PROPERTY_ENTRY_STRING()
2019-01-29 10:52:40 +01:00
psci.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
ptr_ring: remove duplicated include from ptr_ring.h
2019-02-17 15:53:01 -08:00
ptrace.h
ptrace: Remove maxargs from task_current_syscall()
2019-04-04 09:17:15 -04:00
purgatory.h
pvclock_gtod.h
pwm.h
pwm_backlight.h
pxa2xx_ssp.h
pxa168_eth.h
qcom-geni-se.h
qcom_scm.h
qnx6_fs.h
quicklist.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
linux/rcu_node_tree: Convert to SPDX license identifier
2019-02-09 08:44:32 -08:00
rcu_segcblist.h
linux/rcu_segcblist: Convert to SPDX license identifier
2019-02-09 08:44:41 -08:00
rcu_sync.h
linux/rcu_sync: Convert to SPDX license identifier
2019-02-09 08:44:46 -08:00
rculist.h
rculist_bl.h
rculist_nulls.h
rcupdate.h
Merge branches 'doc.2019.01.26a', 'fixes.2019.01.26a', 'sil.2019.01.26a', 'spdx.2019.02.09a', 'srcu.2019.01.26a' and 'torture.2019.01.26a' into HEAD
2019-02-09 08:47:52 -08:00
rcupdate_wait.h
rcutiny.h
linux/rcutiny: Convert to SPDX license identifier
2019-02-09 08:45:46 -08:00
rcutree.h
linux/rcutree: Convert to SPDX license identifier
2019-02-09 08:45:52 -08:00
rcuwait.h
reboot-mode.h
reboot.h
reciprocal_div.h
refcount.h
regmap.h
regmap: regmap-irq: Add main status register support
2019-01-23 15:52:15 +00:00
regset.h
relay.h
include/linux/relay.h: fix percpu annotation in struct rchan
2019-03-07 18:32:03 -08:00
remoteproc.h
remoteproc: fix recovery procedure
2019-02-20 21:34:17 -08:00
reservation.h
reset-controller.h
reset.h
resource.h
resource_ext.h
restart_block.h
rfkill.h
rhashtable-types.h
rhashtable.h
rhashtable: Remove obsolete rhashtable_walk_init function
2019-02-22 13:49:00 +01:00
ring_buffer.h
tracing: kdb: Fix ftdump to not sleep
2019-03-13 09:46:10 -04:00
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
rtc: remove rtc_class_ops.read_callback
2019-02-25 21:20:45 +01:00
rtmutex.h
rtnetlink.h
rtsx_common.h
rtsx_pci.h
rtsx_usb.h
rwlock.h
rwlock_api_smp.h
rwlock_types.h
rwsem-spinlock.h
rwsem.h
s3c_adc_battery.h
sbitmap.h
sbitmap: trivial - update comment for sbitmap_deferred_clear_bit
2019-03-22 11:01:02 -06:00
scatterlist.h
lib/scatterlist: Provide a DMA page iterator
2019-02-11 15:02:33 -07:00
scc.h
sched.h
audit/stable-5.1 PR 20190305
2019-03-07 12:20:11 -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
Merge branch 'work.mount' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs
2019-03-12 14:08:19 -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_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
sha256.h
shdma-base.h
shm.h
shmem_fs.h
mm: rid swapoff of quadratic complexity
2019-03-05 21:07:18 -08:00
shrinker.h
signal.h
signal_types.h
signalfd.h
siox.h
siphash.h
sirfsoc_dma.h
sizes.h
skb_array.h
skbuff.h
Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net
2019-03-11 08:54:01 -07:00
skmsg.h
slab.h
mm: add support for kmem caches in DMA32 zone
2019-03-29 10:01:37 -07:00
slab_def.h
slimbus.h
slub_def.h
include/linux/slub_def.h: comment fixes
2019-03-05 21:07:14 -08:00
sm501-regs.h
sm501.h
smc91x.h
smc911x.h
smp.h
smpboot.h
smsc911x.h
smscphy.h
sock_diag.h
socket.h
net: add documentation to socket.c
2019-03-15 15:29:47 -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
Merge branches 'doc.2019.01.26a', 'fixes.2019.01.26a', 'sil.2019.01.26a', 'spdx.2019.02.09a', 'srcu.2019.01.26a' and 'torture.2019.01.26a' into HEAD
2019-02-09 08:47:52 -08:00
srcutiny.h
linux/srcu: Convert to SPDX license identifier
2019-02-09 08:45:59 -08:00
srcutree.h
Merge branches 'doc.2019.01.26a', 'fixes.2019.01.26a', 'sil.2019.01.26a', 'spdx.2019.02.09a', 'srcu.2019.01.26a' and 'torture.2019.01.26a' into HEAD
2019-02-09 08:47:52 -08:00
ssbi.h
stackdepot.h
stackleak.h
stackprotector.h
stacktrace.h
start_kernel.h
stat.h
statfs.h
vfs: add vfs_get_fsid() helper
2019-02-07 16:38:35 +01:00
static_key.h
stddef.h
stm.h
stmmac.h
net: stmmac: Fallback to Platform Data clock in Watchdog conversion
2019-01-30 22:24:49 -08:00
stmp3xxx_rtc_wdt.h
stmp_device.h
stop_machine.h
string.h
lib/string.c: implement a basic bcmp
2019-04-05 16:02:30 -10:00
string_helpers.h
stringhash.h
stringify.h
sudmac.h
sungem_phy.h
sunserialcore.h
sunxi-rsb.h
superhyway.h
suspend.h
svga.h
sw842.h
swab.h
swait.h
swap.h
include/linux/swap.h: use offsetof() instead of custom __swapoffset macro
2019-03-14 14:36:20 -07:00
swap_cgroup.h
swap_slots.h
swapfile.h
swapops.h
swiotlb.h
virtio: fixes, cleanups
2019-03-10 12:47:57 -07:00
switchtec.h
ntb_hw_switchtec: Added support of >=4G memory windows
2019-02-11 07:36:13 -05:00
sxgbe_platform.h
sync_core.h
sync_file.h
synclink.h
sys.h
sys_soc.h
syscalls.h
pidfd patches for v5.1-rc1
2019-03-16 13:47:14 -07:00
syscore_ops.h
sysctl.h
sysfs.h
syslog.h
sysrq.h
sysv_fs.h
t10-pi.h
task_io_accounting.h
task_io_accounting_ops.h
task_work.h
taskstats_kern.h
tboot.h
tc.h
tca6416_keypad.h
tcp.h
tee_drv.h
tee: add cancellation support to client interface
2019-02-28 13:49:29 +01:00
textsearch.h
textsearch_fsm.h
tfrc.h
thermal.h
thread_info.h
threads.h
thunderbolt.h
ti-emif-sram.h
ti_wilink_st.h
tick.h
tifm.h
timb_dma.h
timb_gpio.h
time.h
time32.h
timex: use __kernel_timex internally
2019-02-07 00:13:27 +01:00
time64.h
y2038: remove struct definition redirects
2019-02-07 00:13:28 +01:00
timecounter.h
timekeeper_internal.h
timekeeping.h
timekeeping32.h
timer.h
timerfd.h
timeriomem-rng.h
timerqueue.h
timex.h
y2038: remove struct definition redirects
2019-02-07 00:13:28 +01:00
tnum.h
topology.h
torture.h
Merge branches 'doc.2019.01.26a', 'fixes.2019.01.26a', 'sil.2019.01.26a', 'spdx.2019.02.09a', 'srcu.2019.01.26a' and 'torture.2019.01.26a' into HEAD
2019-02-09 08:47:52 -08:00
toshiba.h
tpm.h
tpm: pass an array of tpm_extend_digest structures to tpm_pcr_extend()
2019-02-13 09:48:52 +02:00
tpm_command.h
tpm_eventlog.h
tpm: rename and export tpm2_digest and tpm2_algorithms
2019-02-13 09:48:51 +02:00
trace.h
trace_clock.h
trace_events.h
trace_seq.h
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
include/linux/types.h: use "unsigned int" instead of "unsigned"
2019-03-07 18:31:59 -08:00
u64_stats_sync.h
uaccess.h
ucb1400.h
ucs2_string.h
udp.h
uidgid.h
uio.h
io_uring-20190323
2019-03-23 10:25:12 -07:00
uio_driver.h
umh.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
uwb.h
vbox_utils.h
virt: vbox: Implement passing requestor info to the host for VirtualBox 6.0.x
2019-03-28 01:55:18 +09:00
verification.h
kexec, KEYS: Make use of platform keyring for signature verify
2019-02-04 17:34:07 -05:00
vermagic.h
vexpress.h
vfio.h
vfs.h
vga_switcheroo.h
vgaarb.h
drm: move i915_kick_out_vgacon to vgaarb
2019-03-07 10:34:37 +01:00
via-core.h
via-gpio.h
via.h
via_i2c.h
videodev2.h
virtio.h
virtio: Introduce virtio_max_dma_size()
2019-03-06 11:19:15 -05:00
virtio_byteorder.h
virtio_caif.h
virtio_config.h
virtio: hint if callbacks surprisingly might sleep
2019-03-06 11:19:57 -05:00
virtio_console.h
virtio_net.h
Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net
2019-02-24 12:06:19 -08:00
virtio_ring.h
virtio_vsock.h
visorbus.h
vlynq.h
vm_event_item.h
vm_sockets.h
vmacache.h
vmalloc.h
vme.h
vmpressure.h
vmstat.h
vmw_vmci_api.h
vmw_vmci_defs.h
VMCI: Support upto 64-bit PPNs
2019-02-26 12:53:55 +01:00
vringh.h
vt.h
vt_buffer.h
vt_kern.h
vtime.h
w1-gpio.h
w1.h
wait.h
sched/wait: Use freezable_schedule() when possible
2019-02-11 08:34:04 +01:00
wait_bit.h
wanrouter.h
watchdog.h
win_minmax.h
wireless.h
wkup_m3_ipc.h
wl12xx.h
wm97xx.h
wmi.h
platform/x86: wmi: move struct wmi_device_id to mod_devicetable.h
2019-03-07 08:46:07 -08:00
workqueue.h
Driver core patches for 5.1-rc1
2019-03-06 14:52:48 -08:00
writeback.h
ww_mutex.h
xarray.h
XArray: Use xa_cmpxchg to implement xa_reserve
2019-02-20 17:08:54 -05:00
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