Mathieu Desnoyers
5b25b13ab0
sys_membarrier(): system-wide memory barrier (generic, x86)
...
Here is an implementation of a new system call, sys_membarrier(), which
executes a memory barrier on all threads running on the system. It is
implemented by calling synchronize_sched(). It can be used to
distribute the cost of user-space memory barriers asymmetrically by
transforming pairs of memory barriers into pairs consisting of
sys_membarrier() and a compiler barrier. For synchronization primitives
that distinguish between read-side and write-side (e.g. userspace RCU
[1], rwlocks), the read-side can be accelerated significantly by moving
the bulk of the memory barrier overhead to the write-side.
The existing applications of which I am aware that would be improved by
this system call are as follows:
* Through Userspace RCU library (http://urcu.so )
- DNS server (Knot DNS) https://www.knot-dns.cz/
- Network sniffer (http://netsniff-ng.org/ )
- Distributed object storage (https://sheepdog.github.io/sheepdog/ )
- User-space tracing (http://lttng.org )
- Network storage system (https://www.gluster.org/ )
- Virtual routers (https://events.linuxfoundation.org/sites/events/files/slides/DPDK_RCU_0MQ.pdf )
- Financial software (https://lkml.org/lkml/2015/3/23/189 )
Those projects use RCU in userspace to increase read-side speed and
scalability compared to locking. Especially in the case of RCU used by
libraries, sys_membarrier can speed up the read-side by moving the bulk of
the memory barrier cost to synchronize_rcu().
* Direct users of sys_membarrier
- core dotnet garbage collector (https://github.com/dotnet/coreclr/issues/198 )
Microsoft core dotnet GC developers are planning to use the mprotect()
side-effect of issuing memory barriers through IPIs as a way to implement
Windows FlushProcessWriteBuffers() on Linux. They are referring to
sys_membarrier in their github thread, specifically stating that
sys_membarrier() is what they are looking for.
To explain the benefit of this scheme, let's introduce two example threads:
Thread A (non-frequent, e.g. executing liburcu synchronize_rcu())
Thread B (frequent, e.g. executing liburcu
rcu_read_lock()/rcu_read_unlock())
In a scheme where all smp_mb() in thread A are ordering memory accesses
with respect to smp_mb() present in Thread B, we can change each
smp_mb() within Thread A into calls to sys_membarrier() and each
smp_mb() within Thread B into compiler barriers "barrier()".
Before the change, we had, for each smp_mb() pairs:
Thread A Thread B
previous mem accesses previous mem accesses
smp_mb() smp_mb()
following mem accesses following mem accesses
After the change, these pairs become:
Thread A Thread B
prev mem accesses prev mem accesses
sys_membarrier() barrier()
follow mem accesses follow mem accesses
As we can see, there are two possible scenarios: either Thread B memory
accesses do not happen concurrently with Thread A accesses (1), or they
do (2).
1) Non-concurrent Thread A vs Thread B accesses:
Thread A Thread B
prev mem accesses
sys_membarrier()
follow mem accesses
prev mem accesses
barrier()
follow mem accesses
In this case, thread B accesses will be weakly ordered. This is OK,
because at that point, thread A is not particularly interested in
ordering them with respect to its own accesses.
2) Concurrent Thread A vs Thread B accesses
Thread A Thread B
prev mem accesses prev mem accesses
sys_membarrier() barrier()
follow mem accesses follow mem accesses
In this case, thread B accesses, which are ensured to be in program
order thanks to the compiler barrier, will be "upgraded" to full
smp_mb() by synchronize_sched().
* Benchmarks
On Intel Xeon E5405 (8 cores)
(one thread is calling sys_membarrier, the other 7 threads are busy
looping)
1000 non-expedited sys_membarrier calls in 33s =3D 33 milliseconds/call.
* User-space user of this system call: Userspace RCU library
Both the signal-based and the sys_membarrier userspace RCU schemes
permit us to remove the memory barrier from the userspace RCU
rcu_read_lock() and rcu_read_unlock() primitives, thus significantly
accelerating them. These memory barriers are replaced by compiler
barriers on the read-side, and all matching memory barriers on the
write-side are turned into an invocation of a memory barrier on all
active threads in the process. By letting the kernel perform this
synchronization rather than dumbly sending a signal to every process
threads (as we currently do), we diminish the number of unnecessary wake
ups and only issue the memory barriers on active threads. Non-running
threads do not need to execute such barrier anyway, because these are
implied by the scheduler context switches.
Results in liburcu:
Operations in 10s, 6 readers, 2 writers:
memory barriers in reader: 1701557485 reads, 2202847 writes
signal-based scheme: 9830061167 reads, 6700 writes
sys_membarrier: 9952759104 reads, 425 writes
sys_membarrier (dyn. check): 7970328887 reads, 425 writes
The dynamic sys_membarrier availability check adds some overhead to
the read-side compared to the signal-based scheme, but besides that,
sys_membarrier slightly outperforms the signal-based scheme. However,
this non-expedited sys_membarrier implementation has a much slower grace
period than signal and memory barrier schemes.
Besides diminishing the number of wake-ups, one major advantage of the
membarrier system call over the signal-based scheme is that it does not
need to reserve a signal. This plays much more nicely with libraries,
and with processes injected into for tracing purposes, for which we
cannot expect that signals will be unused by the application.
An expedited version of this system call can be added later on to speed
up the grace period. Its implementation will likely depend on reading
the cpu_curr()->mm without holding each CPU's rq lock.
This patch adds the system call to x86 and to asm-generic.
[1] http://urcu.so
membarrier(2) man page:
MEMBARRIER(2) Linux Programmer's Manual MEMBARRIER(2)
NAME
membarrier - issue memory barriers on a set of threads
SYNOPSIS
#include <linux/membarrier.h>
int membarrier(int cmd, int flags);
DESCRIPTION
The cmd argument is one of the following:
MEMBARRIER_CMD_QUERY
Query the set of supported commands. It returns a bitmask of
supported commands.
MEMBARRIER_CMD_SHARED
Execute a memory barrier on all threads running on the system.
Upon return from system call, the caller thread is ensured that
all running threads have passed through a state where all memory
accesses to user-space addresses match program order between
entry to and return from the system call (non-running threads
are de facto in such a state). This covers threads from all pro=E2=80=90
cesses running on the system. This command returns 0.
The flags argument needs to be 0. For future extensions.
All memory accesses performed in program order from each targeted
thread is guaranteed to be ordered with respect to sys_membarrier(). If
we use the semantic "barrier()" to represent a compiler barrier forcing
memory accesses to be performed in program order across the barrier,
and smp_mb() to represent explicit memory barriers forcing full memory
ordering across the barrier, we have the following ordering table for
each pair of barrier(), sys_membarrier() and smp_mb():
The pair ordering is detailed as (O: ordered, X: not ordered):
barrier() smp_mb() sys_membarrier()
barrier() X X O
smp_mb() X O O
sys_membarrier() O O O
RETURN VALUE
On success, these system calls return zero. On error, -1 is returned,
and errno is set appropriately. For a given command, with flags
argument set to 0, this system call is guaranteed to always return the
same value until reboot.
ERRORS
ENOSYS System call is not implemented.
EINVAL Invalid arguments.
Linux 2015-04-15 MEMBARRIER(2)
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Reviewed-by: Paul E. McKenney <paulmck@linux.vnet.ibm.com>
Reviewed-by: Josh Triplett <josh@joshtriplett.org>
Cc: KOSAKI Motohiro <kosaki.motohiro@jp.fujitsu.com>
Cc: Steven Rostedt <rostedt@goodmis.org>
Cc: Nicholas Miell <nmiell@comcast.net>
Cc: Ingo Molnar <mingo@redhat.com>
Cc: Alan Cox <gnomes@lxorguk.ukuu.org.uk>
Cc: Lai Jiangshan <laijs@cn.fujitsu.com>
Cc: Stephen Hemminger <stephen@networkplumber.org>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: David Howells <dhowells@redhat.com>
Cc: Pranith Kumar <bobby.prani@gmail.com>
Cc: Michael Kerrisk <mtk.manpages@gmail.com>
Cc: Shuah Khan <shuahkh@osg.samsung.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2015-09-11 15:21:34 -07:00
..
amba
Revert "uart: pl011: Add support to ZTE ZX296702 uart"
2015-09-04 09:14:20 -07:00
bcma
bcma: switch GPIO portions to use GPIOLIB_IRQCHIP
2015-08-18 09:08:47 +03:00
byteorder
can
can: replace timestamp as unique skb attribute
2015-07-12 21:13:22 +02:00
ceph
libceph: enable ceph in a non-default network namespace
2015-07-09 20:30:34 +03:00
clk
ARM: SoC driver updates for v4.3
2015-09-01 13:00:04 -07:00
crush
crush: sync up with userspace
2015-06-25 11:49:31 +03:00
decompress
dma
dmaengine: pxa: add pxa dmaengine driver
2015-05-26 09:18:29 +05:30
extcon
extcon: Use the unique id for external connector instead of string
2015-05-22 18:58:44 +09:00
fsl /bestcomm
gpio
Merge branch 'drm-next' of git://people.freedesktop.org/~airlied/linux
2015-09-04 15:49:32 -07:00
hsi
i2c
Input: atmel_mxt_ts - use deep sleep mode when stopped
2015-08-04 17:03:52 -07:00
iio
iio: Add inverse unit conversion macros
2015-08-08 12:50:40 +01:00
input
Input: pixcir_i2c_ts - move platform data
2015-07-11 17:27:36 -07:00
irqchip
ARM:
2015-09-10 16:42:49 -07:00
isdn
lockd
mfd
sound updates for 4.3-rc1
2015-09-04 11:46:02 -07:00
mlx4
Changes for 4.3
2015-09-09 08:33:31 -07:00
mlx5
Changes for 4.3
2015-09-09 08:33:31 -07:00
mmc
mmc: block: skip trim for some kingston eMMCs
2015-08-27 14:50:52 +02:00
mtd
arch, drivers: don't include <asm/io.h> directly, use <linux/io.h> instead
2015-08-10 23:07:05 -04:00
netfilter
netfilter: nf_conntrack: make nf_ct_zone_dflt built-in
2015-09-02 16:32:56 -07:00
netfilter_arp
netfilter_bridge
Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial
2015-06-23 14:08:54 -07:00
netfilter_ipv4
netfilter_ipv6
perf
arm: perf: factor arm_pmu core out to drivers
2015-07-31 15:01:14 +01:00
phy
phy: for 4.2 merge window
2015-06-03 14:13:41 +09:00
pinctrl
pinctrl: use "const struct ..." rather than "struct ... const"
2015-06-01 15:48:12 +02:00
platform_data
MMC core:
2015-09-08 16:33:16 -07:00
power
power: max17042_battery: add HEALTH and TEMP_* properties support
2015-05-23 22:43:28 +02:00
raid
regulator
Merge remote-tracking branches 'regulator/topic/qcom-smd', 'regulator/topic/qcom-spmi', 'regulator/topic/rk808', 'regulator/topic/stub' and 'regulator/topic/tol' into regulator-next
2015-08-30 14:40:11 +01:00
reset
ARM: BCM63xx: Add Broadcom BCM63xx PMB controller helpers
2015-05-20 15:05:39 -07:00
rtc
ARM: prima2: move to use REGMAP APIs for rtciobrg
2015-06-10 15:10:26 +08:00
sched
timer: Reduce timer migration overhead if disabled
2015-06-19 15:18:28 +02:00
soc
ARM: SoC driver updates for v4.3
2015-09-01 13:00:04 -07:00
spi
spi: expose spi_master and spi_device statistics via sysfs
2015-07-07 13:33:23 +01:00
ssb
MIPS: BCM47xx: Extract info about et2 interface
2015-06-21 21:52:24 +02:00
sunrpc
Changes for 4.3
2015-09-09 08:33:31 -07:00
ulpi
usb: add bus type for USB ULPI
2015-05-13 12:04:55 -05:00
unaligned
usb
Revert "usb: interface authorization: Introduces the default interface authorization"
2015-08-18 09:58:45 -07:00
uwb
wimax
8250_pci.h
a.out.h
acct.h
acpi.h
Merge branches 'acpi-pci', 'acpi-soc', 'acpi-ec' and 'acpi-osl'
2015-09-01 03:41:19 +02:00
acpi_dma.h
acpi_irq.h
acpi_pmtmr.h
adb.h
adfs_fs.h
aer.h
agp_backend.h
agpgart.h
ahci_platform.h
aio.h
alarmtimer.h
altera_jtaguart.h
altera_uart.h
amd-iommu.h
amifd.h
amifdreg.h
amigaffs.h
anon_inodes.h
apm-emulation.h
apm_bios.h
apple_bl.h
arcdevice.h
arm-cci.h
asn1.h
asn1_ber_bytecode.h
ASN.1: Handle 'ANY OPTIONAL' in grammar
2015-08-05 13:38:07 +01:00
asn1_decoder.h
assoc_array.h
assoc_array_priv.h
async.h
async_tx.h
ata.h
Revert "libata: Implement NCQ autosense"
2015-08-03 12:01:54 -04:00
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
atmel_serial.h
tty/serial: at91: add support to FIFOs
2015-07-23 18:00:42 -07:00
atmel_tc.h
atomic.h
locking/atomics: Add _{acquire|release|relaxed}() variants of some atomic operations
2015-08-12 11:58:59 +02:00
attribute_container.h
audit.h
audit: implement audit by executable
2015-08-06 16:17:25 -04:00
auto_dev-ioctl.h
auto_fs.h
auxvec.h
average.h
average: remove out-of-line implementation
2015-08-20 14:10:23 -07:00
b1pcmcia.h
backing-dev-defs.h
writeback: don't embed root bdi_writeback_congested in bdi_writeback
2015-07-02 08:46:00 -06:00
backing-dev.h
blkcg: rename subsystem name from blkio to io
2015-08-18 15:49:18 -07:00
backlight.h
backlight: Change the return type of backlight_update_status() to int
2015-06-23 15:47:35 +01:00
balloon_compaction.h
basic_mmio_gpio.h
gpio: generic: support input-only chips
2015-07-27 15:01:05 +02:00
bcd.h
bch.h
bcm47xx_nvram.h
MIPS: BCM47xx: Move NVRAM driver to the drivers/firmware/
2015-06-21 21:55:33 +02:00
bcm47xx_wdt.h
bfin_mac.h
binfmts.h
bio.h
block: Replace SG_GAPS with new queue limits mask
2015-08-19 14:26:02 -07:00
bit_spinlock.h
bitmap.h
linux/bitmap: Force inlining of bitmap weight functions
2015-08-05 09:38:08 +02:00
bitops.h
linux/bitmap: Force inlining of bitmap weight functions
2015-08-05 09:38:08 +02:00
bitrev.h
blk-cgroup.h
blkcg: use CGROUP_WEIGHT_* scale for io.weight on the unified hierarchy
2015-08-18 15:49:36 -07:00
blk-iopoll.h
blk-mq.h
blk-mq: Shared tag enhancements
2015-06-01 14:35:56 -06:00
blk_types.h
Merge branch 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jack/linux-fs
2015-09-03 12:28:30 -07:00
blkdev.h
libnvdimm for 4.3:
2015-09-08 14:35:59 -07:00
blktrace_api.h
blockgroup_lock.h
bma150.h
bootmem.h
mm: only define hashdist variable when needed
2015-06-24 17:49:41 -07:00
bottom_half.h
sched/preempt: Merge preempt_mask.h into preempt.h
2015-05-19 08:39:11 +02:00
bpf.h
bpf: Implement function bpf_perf_event_read() that get the selected hardware PMU conuter
2015-08-09 22:50:06 -07:00
brcmphy.h
net: phy: broadcom: define Broadcom pseudo-PHY address in brcmphy.h
2015-06-10 23:33:58 -07:00
bsearch.h
bsg-lib.h
bsg.h
btree-128.h
btree-type.h
btree.h
btrfs.h
buffer_head.h
bufferhead: Add _gfp version for sb_getblk()
2015-07-02 01:32:44 -04:00
bug.h
c2port.h
cache.h
cacheinfo.h
drivers/base: cacheinfo: fix annoying typo when DT nodes are absent
2015-05-24 12:31:33 -07:00
capability.h
cb710.h
cciss_ioctl.h
ccp.h
cdev.h
cdrom.h
cfag12864b.h
cgroup-defs.h
Merge branch 'for-4.3-unified-base' into for-4.3
2015-08-25 14:19:29 -04:00
cgroup.h
Merge branch 'for-4.3-unified-base' into for-4.3
2015-08-25 14:19:29 -04:00
cgroup_subsys.h
Merge branch 'for-4.3/blkcg' of git://git.kernel.dk/linux-block
2015-09-10 18:56:14 -07:00
circ_buf.h
cleancache.h
clk-provider.h
clk: Constify clk_hw argument to provider APIs
2015-08-24 16:49:11 -07:00
clk.h
clkdev.h
include, lib: add __printf attributes to several function prototypes
2015-07-17 16:39:53 -07:00
clksrc-dbx500-prcmu.h
clock_cooling.h
clockchips.h
clockevents: Remove clockevents_notify() prototype
2015-07-20 11:37:46 +02:00
clocksource.h
Merge branch 'linus' into timers/core
2015-05-19 16:12:32 +02:00
cm4000_cs.h
cma.h
cmdline-parser.h
cn_proc.h
cnt32_to_63.h
coda.h
coda_psdev.h
com20020.h
compaction.h
compat.h
include, lib: add __printf attributes to several function prototypes
2015-07-17 16:39:53 -07:00
compiler-clang.h
compiler-gcc.h
compiler-gcc: integrate the various compiler-gcc[345].h files
2015-06-25 17:00:38 -07:00
compiler-intel.h
compiler-intel: fix wrong compiler barrier() macro
2015-06-25 17:00:38 -07:00
compiler.h
locking, compiler.h: Cast away attributes in the WRITE_ONCE() magic
2015-08-12 11:58:58 +02:00
completion.h
component.h
concap.h
configfs.h
include, lib: add __printf attributes to several function prototypes
2015-07-17 16:39:53 -07:00
connector.h
console.h
printk: implement support for extended console drivers
2015-06-25 17:00:38 -07:00
console_struct.h
consolemap.h
container.h
context_tracking.h
context_tracking: Add ct_state() and CT_WARN_ON()
2015-07-07 10:59:04 +02:00
context_tracking_state.h
context_tracking: Add ct_state() and CT_WARN_ON()
2015-07-07 10:59:04 +02:00
cordic.h
coredump.h
coresight.h
coresight: Fix implicit inclusion of linux/sched.h
2015-08-05 13:30:16 -07:00
cper.h
efi: Handle memory error structures produced based on old versions of standard
2015-07-15 13:30:38 +01:00
cpu.h
include, lib: add __printf attributes to several function prototypes
2015-07-17 16:39:53 -07:00
cpu_cooling.h
cpu_pm.h
cpu_rmap.h
cpufeature.h
cpufeature: correctly annotate the module init function
2015-07-22 09:58:02 +02:00
cpufreq-dt.h
cpufreq.h
Merge branch 'pm-opp'
2015-09-01 15:52:41 +02:00
cpuidle.h
cpuidle/coupled: Remove cpuidle_device::safe_state_index
2015-08-28 15:14:54 +02:00
cpumask.h
cpumask_set_cpu_local_first => cpumask_local_spread, lament
2015-05-28 11:05:20 +09:30
cpuset.h
cputime.h
crash_dump.h
crc-ccitt.h
crc-itu-t.h
lib: crc-itu-t.[ch] fix 0x0x prefix in integer constants
2015-05-26 15:26:43 +02:00
crc-t10dif.h
lib: introduce crc_t10dif_update()
2015-05-30 22:42:24 -07:00
crc7.h
crc8.h
crc16.h
crc32.h
crc32c.h
cred.h
capabilities: ambient capabilities
2015-09-04 16:54:41 -07:00
crypto.h
crypto: aead - Remove CRYPTO_ALG_AEAD_NEW flag
2015-08-17 16:53:53 +08:00
cryptohash.h
cs5535.h
ctype.h
cuda.h
cyclades.h
davinci_emac.h
dax.h
dax: add huge page fault support
2015-09-08 15:35:28 -07:00
dca.h
dcache.h
include, lib: add __printf attributes to several function prototypes
2015-07-17 16:39:53 -07:00
dccp.h
dcookies.h
debug_locks.h
debugfs.h
debugfs: Export bool read/write functions
2015-07-20 18:44:50 +01:00
debugobjects.h
delay.h
delayacct.h
dell-led.h
devcoredump.h
devfreq-event.h
devfreq.h
device-mapper.h
block: kill merge_bvec_fn() completely
2015-08-13 12:31:57 -06:00
device.h
Power management and ACPI material for v4.3-rc1
2015-09-01 19:45:46 -07:00
device_cgroup.h
devpts_fs.h
digsig.h
dio.h
dirent.h
dlm.h
dlm_plock.h
dm-dirty-log.h
dm-io.h
dm-kcopyd.h
dm-region-hash.h
dm9000.h
dma-attrs.h
dma-buf.h
dma-buf: add ref counting for module as exporter
2015-05-13 14:35:57 +05:30
dma-contiguous.h
dma-debug.h
dma-direction.h
dma-mapping.h
dma_remapping.h
dmaengine.h
dmaengine: Stricter legacy checking in dma_request_slave_channel_compat()
2015-08-20 12:01:03 +05:30
dmapool.h
mm: add dma_pool_zalloc() call to DMA API
2015-09-08 15:35:28 -07:00
dmar.h
iommu: dmar: Provide helper to copy shared irte fields
2015-06-12 11:33:52 +02:00
dmi.h
firmware: dmi: struct dmi_header should be packed
2015-06-25 09:06:57 +02: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
ds1286.h
ds2782_battery.h
ds17287rtc.h
dtlk.h
dw_apb_timer.h
dynamic_debug.h
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
The libnvdimm sub-system introduces, in addition to the libnvdimm-core,
2015-06-29 10:34:42 -07:00
efs_vh.h
eisa.h
elevator.h
cfq-iosched: fix the setting of IOPS mode on SSDs
2015-06-10 08:01:20 -06:00
elf-fdpic.h
elf-randomize.h
elf.h
elfcore-compat.h
elfcore.h
elfnote.h
enclosure.h
err.h
errno.h
errqueue.h
etherdevice.h
net: fix endian check warning in etherdevice.h
2015-08-17 12:14:53 -07:00
ethtool.h
eventfd.h
eventpoll.h
evm.h
export.h
exportfs.h
ext2_fs.h
extcon.h
extcon: Remove optional print_state() function pointer of struct extcon_dev
2015-08-10 11:48:55 +09:00
f2fs_fs.h
f2fs: add annotation for space utilization of regular/inline dentry
2015-08-21 22:45:13 -07:00
f75375s.h
falloc.h
fanotify.h
fault-inject.h
fb.h
fbdev: fix cea_modes array size
2015-08-20 10:20:11 +03:00
fcdevice.h
fcntl.h
fd.h
fddidevice.h
fdtable.h
rcu: Rename rcu_lockdep_assert() to RCU_LOCKDEP_WARN()
2015-07-22 15:27:32 -07:00
fec.h
fence.h
file.h
filter.h
bpf: also show process name/pid in bpf_jit_dump
2015-07-30 11:13:21 -07:00
fips.h
firewire.h
firmware-map.h
firmware.h
fixp-arith.h
flat.h
flex_array.h
flex_proportions.h
fmc-sdb.h
fmc.h
font.h
freezer.h
frontswap.h
frontswap: allow multiple backends
2015-06-24 17:49:45 -07:00
fs.h
dax: move DAX-related functions to a new header
2015-09-08 15:35:28 -07:00
fs_enet_pd.h
fs_pin.h
fs_stack.h
fs_struct.h
fs_uart_pd.h
fscache-cache.h
fscache.h
fsl-diu-fb.h
fsl_devices.h
drivers: usb: fsl: Workaround for USB erratum-A005275
2015-08-14 16:50:36 -07:00
fsl_hypervisor.h
fsl_ifc.h
fsl_ifc: Change IO accessor based on endianness
2015-08-07 22:59:34 -05:00
fsldma.h
fsnotify.h
fsnotify_backend.h
Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs
2015-09-05 20:34:28 -07:00
ftrace.h
ftrace: Fix breakage of set_ftrace_pid
2015-07-24 13:58:14 -04:00
ftrace_irq.h
futex.h
fwnode.h
gameport.h
gcd.h
genalloc.h
genalloc: add support of multiple gen_pools per device
2015-09-04 16:54:41 -07:00
genetlink.h
genhd.h
block: partition: convert percpu ref
2015-07-17 08:41:53 -06:00
genl_magic_func.h
genl_magic_struct.h
getcpu.h
gfp.h
mm: use numa_mem_id() in alloc_pages_node()
2015-09-08 15:35:28 -07:00
glob.h
goldfish.h
staging: goldfish: Fix pointer cast for 32 bits
2015-05-31 11:40:14 +09:00
gpio-fan.h
gpio-pxa.h
gpio.h
gpio: remove gpiod_sysfs_set_active_low
2015-05-12 10:46:53 +02:00
gpio_keys.h
gpio_mouse.h
hardirq.h
sched/preempt: Merge preempt_mask.h into preempt.h
2015-05-19 08:39:11 +02:00
hash.h
hashtable.h
hdlc.h
hdlcdrv.h
hdmi.h
hid-debug.h
hid-roccat.h
hid-sensor-hub.h
First set of IIO fixes for the 4.2 cycle.
2015-07-13 14:18:07 -07:00
hid-sensor-ids.h
hid.h
HID: Export hid_field_extract()
2015-06-01 14:33:35 +02:00
hiddev.h
hidraw.h
highmem.h
sched/preempt, mm/kmap: Explicitly disable/enable preemption in kmap_atomic_*
2015-05-19 08:39:14 +02:00
highuid.h
hil.h
hil_mlc.h
hippidevice.h
host1x.h
hp_sdc.h
hpet.h
hrtimer.h
timer: Minimize nohz off overhead
2015-06-19 15:18:28 +02:00
htcpld.h
htirq.h
huge_mm.h
dax: don't use set_huge_zero_page()
2015-09-08 15:35:28 -07:00
hugetlb.h
hugetlbfs: add hugetlbfs_fallocate()
2015-09-08 15:35:28 -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: Further improve CPU affiliation logic
2015-08-05 11:44:28 -07:00
i2c-algo-bit.h
i2c-algo-pca.h
i2c-algo-pcf.h
i2c-dev.h
i2c-gpio.h
i2c-mux-gpio.h
i2c-mux-pinctrl.h
i2c-mux.h
i2c-ocores.h
i2c-omap.h
i2c-pca-platform.h
i2c-pnx.h
i2c-pxa.h
i2c-smbus.h
i2c-xiic.h
i2c.h
i2c: core: Add support for best effort block read emulation
2015-08-24 14:05:19 +02:00
i7300_idle.h
i8042.h
i8253.h
icmp.h
icmpv6.h
ide.h
idr.h
ieee80211.h
mac80211: fix BIT position for TDLS WIDE extended cap
2015-08-14 17:49:53 +02:00
ieee802154.h
ieee802154: Fix EUI-64 station address validation.
2015-05-31 13:40:53 +02:00
if_arp.h
if_bridge.h
if_eql.h
if_ether.h
if_fddi.h
if_frad.h
if_link.h
net/core: Add reading VF statistics through the PF netdevice
2015-06-15 17:23:03 -07:00
if_ltalk.h
if_macvlan.h
macvtap: Increase limit of macvtap queues
2015-06-23 06:14:04 -07:00
if_phonet.h
if_pppol2tp.h
if_pppox.h
net: Pass kern from net_proto_family.create to sk_alloc
2015-05-11 10:50:17 -04:00
if_team.h
if_tun.h
if_tunnel.h
if_vlan.h
vlan: Add GRO support for non hardware accelerated vlan
2015-06-01 16:50:52 -07:00
igmp.h
IGMP: Inhibit reports for local multicast groups
2015-08-28 13:28:47 -07:00
ihex.h
ima.h
in.h
in6.h
inet.h
inet_diag.h
sock_diag: specify info_size per inet protocol
2015-06-15 19:49:22 -07:00
inet_lro.h
inetdevice.h
net: ipv4 sysctl option to ignore routes when nexthop link is down
2015-06-24 02:15:54 -07:00
init.h
module: relocate module_init from init.h to module.h
2015-07-05 23:59:14 -04:00
init_ohci1394_dma.h
init_task.h
sched/cputime: Guarantee stime + utime == rtime
2015-08-03 12:21:21 +02:00
initrd.h
inotify.h
input-polldev.h
input.h
integrity.h
intel-iommu.h
iommu/vt-d: Split up iommu->domains array
2015-08-12 16:23:33 +02:00
intel_pmic_gpio.h
interrupt.h
interval_tree.h
interval_tree_generic.h
io-mapping.h
arch, drivers: don't include <asm/io.h> directly, use <linux/io.h> instead
2015-08-10 23:07:05 -04:00
io.h
add devm_memremap_pages
2015-08-27 19:40:58 -04:00
ioc3.h
ioc4.h
iocontext.h
iommu-common.h
iommu-helper.h
iommu.h
include, lib: add __printf attributes to several function prototypes
2015-07-17 16:39:53 -07:00
iopoll.h
ioport.h
ioprio.h
iova.h
ip.h
ipack.h
ipc.h
ipc_namespace.h
ipmi-fru.h
ipmi.h
ipmi_smi.h
ipmi: Don't flush messages in sender() in run-to-completion mode
2015-09-03 15:02:28 -05:00
ipv6.h
net: ipv6 sysctl option to ignore routes when nexthop link is down
2015-08-13 21:27:19 -07:00
ipv6_route.h
irq.h
Merge branch 'irq-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip
2015-09-01 14:33:35 -07:00
irq_cpustat.h
irq_work.h
irqchip.h
irqchip: Move IRQCHIP_DECLARE macro to include/linux/irqchip.h
2015-07-02 22:34:38 +02:00
irqdesc.h
genirq: Provide irq_desc_has_action
2015-08-06 00:14:59 +02:00
irqdomain.h
genirq: Add DOMAIN_BUS_NEXUS irqdomain property
2015-07-30 00:14:38 +02:00
irqflags.h
irqhandler.h
irqnr.h
genirq: Remove irq_node()
2015-06-25 12:06:45 +02:00
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
jbd2.h
Pretty much all bug fixes and clean ups for 4.3, after a lot of
2015-09-03 12:52:19 -07:00
jhash.h
jiffies.h
Merge branch 'timers-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip
2015-09-01 14:04:50 -07:00
journal-head.h
joystick.h
jump_label.h
jump label, locking/static_keys: Update docs
2015-08-03 11:51:14 +02:00
jump_label_ratelimit.h
jz4740-adc.h
jz4780-nemc.h
kallsyms.h
kasan.h
x86/kasan, mm: Introduce generic kasan_populate_zero_shadow()
2015-08-22 14:54:55 +02:00
kbd_diacr.h
kbd_kern.h
kbuild.h
kconfig.h
kcore.h
kd.h
kdb.h
kdebug.h
kdev_t.h
kern_levels.h
kernel-page-flags.h
kernel.h
include, lib: add __printf attributes to several function prototypes
2015-07-17 16:39:53 -07:00
kernel_stat.h
kernelcapi.h
kernfs.h
kernfs: implement kernfs_path_len()
2015-08-18 15:49:15 -07:00
kexec.h
kexec: split kexec_load syscall from kexec core code
2015-09-10 13:29:01 -07:00
key-type.h
key.h
keyboard.h
kfifo.h
kgdb.h
khugepaged.h
klist.h
klist: implement klist_prev()
2015-07-28 08:50:42 +01:00
kmemcheck.h
kmemleak.h
mm: kmemleak_alloc_percpu() should follow the gfp from per_alloc()
2015-06-24 17:49:46 -07:00
kmod.h
kmod: use system_unbound_wq instead of khelper
2015-09-10 13:29:01 -07:00
kmsg_dump.h
kobj_map.h
kobject.h
include, lib: add __printf attributes to several function prototypes
2015-07-17 16:39:53 -07:00
kobject_ns.h
kprobes.h
perf/x86/hw_breakpoints: Disallow kernel breakpoints unless kprobe-safe
2015-08-04 10:16:54 +02:00
kref.h
ks0108.h
ks8842.h
ks8851_mll.h
ksm.h
kthread.h
kernel/kthread.c:kthread_create_on_node(): clarify documentation
2015-09-04 16:54:41 -07:00
ktime.h
ktime: Fix ktime_divns to do signed division
2015-05-13 10:19:35 +02:00
kvm_host.h
KVM: make halt_poll_ns per-vCPU
2015-09-06 16:27:10 +02:00
kvm_para.h
kvm_types.h
KVM: add memslots argument to kvm_arch_memslots_updated
2015-05-26 12:40:17 +02:00
l2tp.h
lapb.h
latencytop.h
lcd.h
lcm.h
led-class-flash.h
led-lm3530.h
leds-bd2802.h
leds-lp3944.h
leds-pca9532.h
leds-regulator.h
leds-tca6507.h
leds.h
leds_pwm.h
lglock.h
sched/stop_machine: Fix deadlock between multiple stop_two_cpus()
2015-06-19 10:03:12 +02:00
lguest.h
lguest_launcher.h
libata.h
libata: add ATA_HORKAGE_MAX_SEC_1024 to revert back to previous max_sectors limit
2015-07-15 11:47:24 -04:00
libfdt.h
libfdt_env.h
libnvdimm.h
libnvdimm, pmem: direct map legacy pmem by default
2015-08-28 23:40:05 -04:00
libps2.h
license.h
linkage.h
linux_logo.h
lis3lv02d.h
list.h
inode: add hlist_fake to avoid the inode hash lock in evict
2015-08-17 18:39:45 -04:00
list_bl.h
list_lru.h
list_nulls.h
list_sort.h
livepatch.h
livepatch: introduce patch/func-walking helpers
2015-05-19 23:58:43 +02:00
llc.h
llist.h
locking, include/llist: Use linux/atomic.h instead of asm/cmpxchg.h
2015-08-12 11:59:08 +02:00
lockdep.h
Merge branch 'sched-hrtimers-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip
2015-06-24 15:09:40 -07:00
lockref.h
log2.h
lp.h
lru_cache.h
lsm_audit.h
security: add ioctl specific auditing to lsm_audit
2015-07-13 13:31:58 -04:00
lsm_hooks.h
Yama: remove needless CONFIG_SECURITY_YAMA_STACKED
2015-07-28 13:18:19 +10:00
lz4.h
lzo.h
m48t86.h
mailbox_client.h
mailbox: Add ability for clients to request channels by name
2015-06-11 22:19:45 +05:30
mailbox_controller.h
mailbox: switch to hrtimer for tx_complete polling
2015-08-10 14:29:27 +05:30
maple.h
marvell_phy.h
math64.h
max17040_battery.h
mbcache.h
mbus.h
bus: mvebu-mbus: add mv_mbus_dram_info_nooverlap()
2015-05-28 12:21:08 +02:00
mc6821.h
mc146818rtc.h
mcb.h
mdio-bitbang.h
mdio-gpio.h
mdio-gpio: Propagate mii_bus.phy_ignore_ta_mask
2015-05-14 22:35:13 -04:00
mdio-mux.h
mdio.h
mei_cl_bus.h
mei: bus: add and call callback on notify event
2015-08-03 17:30:00 -07:00
memblock.h
mem-hotplug: handle node hole when initializing numa_meminfo.
2015-09-08 15:35:28 -07:00
memcontrol.h
memcg: zap try_get_mem_cgroup_from_page
2015-09-10 13:29:01 -07:00
memory.h
memory_hotplug.h
mm: ZONE_DEVICE for "device memory"
2015-08-27 19:40:58 -04:00
mempolicy.h
mempool.h
memstick.h
mg_disk.h
mic_bus.h
micrel_phy.h
microchipphy.h
add microchip LAN88xx phy driver
2015-09-09 17:19:14 -07:00
migrate.h
migrate_mode.h
mii.h
miscdevice.h
char: make misc_deregister a void function
2015-08-05 10:35:49 -07:00
mISDNdsp.h
mISDNhw.h
mISDNif.h
mm-arch-hooks.h
mm: new arch_remap() hook
2015-06-24 17:49:41 -07:00
mm.h
mm, mpx: add "vm_flags_t vm_flags" arg to do_mmap_pgoff()
2015-09-10 13:29:01 -07:00
mm_inline.h
mm_types.h
mm: drop __nocast from vm_flags_t definition
2015-09-08 15:35:28 -07:00
mman.h
mmdebug.h
mmiotrace.h
include, lib: add __printf attributes to several function prototypes
2015-07-17 16:39:53 -07:00
mmu_context.h
mmu_notifier.h
mm: introduce idle page tracking
2015-09-10 13:29:01 -07:00
mmzone.h
libnvdimm for 4.3:
2015-09-08 14:35:59 -07:00
mnt_namespace.h
mod_devicetable.h
mod_devicetable: add space before */
2015-08-07 15:03:42 +02:00
module.h
module: relocate module_init from init.h to module.h
2015-07-05 23:59:14 -04:00
moduleloader.h
moduleparam.h
Minor merge needed, due to function move.
2015-07-01 10:49:25 -07:00
mount.h
mpage.h
mpi.h
MPILIB: add mpi_read_buf() and mpi_get_size() helpers
2015-06-16 14:35:06 +08:00
mpls.h
mpls_iptunnel.h
mpls: ip tunnel support
2015-07-21 10:39:05 -07:00
mroute.h
mroute6.h
msdos_fs.h
msg.h
msi.h
PCI/MSI: Drop domain field from msi_controller
2015-07-30 00:14:39 +02:00
msm_mdp.h
mutex-debug.h
mutex.h
mv643xx.h
mv643xx_eth.h
mv643xx_i2c.h
mvebu-pmsu.h
mxm-wmi.h
n_r3964.h
namei.h
turn user_{path_at,path,lpath,path_dir}() into static inlines
2015-05-15 01:10:45 -04:00
nd.h
libnvdimm: infrastructure for btt devices
2015-06-25 04:20:04 -04:00
net.h
net_dbg_ratelimited: turn into no-op when !DEBUG
2015-08-06 23:51:30 -07:00
netdev_features.h
switchdev: remove NETIF_F_HW_SWITCH_OFFLOAD feature flag
2015-05-12 18:43:55 -04:00
netdevice.h
net: Add info for NETDEV_CHANGEUPPER event
2015-08-30 18:08:49 -04:00
netfilter.h
netfilter: nf_conntrack: make nf_ct_zone_dflt built-in
2015-09-02 16:32:56 -07:00
netfilter_bridge.h
netfilter: bridge: reduce nf_bridge_info to 32 bytes again
2015-07-30 13:37:42 +02:00
netfilter_defs.h
netfilter: don't pull include/linux/netfilter.h from netns headers
2015-06-18 21:14:31 +02:00
netfilter_ingress.h
netfilter: add netfilter ingress hook after handle_ing() under unique static key
2015-05-14 01:10:05 -04:00
netfilter_ipv4.h
netfilter_ipv6.h
netfilter: Define v6ops in !CONFIG_NETFILTER case.
2015-08-27 16:35:51 -07:00
netlink.h
netlink, mmap: fix edge-case leakages in nf queue zero-copy
2015-09-09 21:43:22 -07:00
netpoll.h
nfs.h
nfs3.h
nfs4.h
pnfs: move common blocklayout XDR defintions to nfs4.h
2015-08-17 13:22:49 -05:00
nfs_fs.h
NFS: Remove nfs_release()
2015-08-17 13:32:56 -05:00
nfs_fs_i.h
nfs_fs_sb.h
NFS: Get suppattr_exclcreat when getting server capabilities
2015-08-27 19:45:27 -04:00
nfs_iostat.h
nfs_page.h
NFS: Remove unused nfs_rw_ops->rw_release() function
2015-06-10 18:32:40 -04:00
nfs_xdr.h
NFSv4: Express delegation limit in units of pages
2015-09-07 12:36:13 -04:00
nfsacl.h
nilfs2_fs.h
nl802154.h
nls.h
nmi.h
Merge branch 'nmi' of git://ftp.arm.linux.org.uk/~rmk/linux-arm
2015-09-08 12:28:10 -07:00
node.h
nodemask.h
notifier.h
ns_common.h
nsc_gpio.h
nsproxy.h
ntb.h
NTB: Add NTB hardware abstraction layer
2015-07-04 14:04:44 -04:00
ntb_transport.h
NTB: Split ntb_hw_intel and ntb_transport drivers
2015-07-04 14:05:49 -04:00
nubus.h
numa.h
nvme.h
NVMe: Add nvme subsystem reset IOCTL
2015-08-18 11:56:13 -06:00
nvmem-consumer.h
nvmem: Add nvmem_device based consumer apis.
2015-08-05 13:43:44 -07:00
nvmem-provider.h
nvmem: Add a simple NVMEM framework for nvmem providers
2015-08-05 13:43:12 -07:00
nvram.h
nwpserial.h
of.h
device property: check fwnode type in to_of_node()
2015-08-26 01:46:39 +02:00
of_address.h
of_device.h
of: constify drv arg of of_driver_match_device stub
2015-07-27 08:23:27 -05:00
of_dma.h
of_fdt.h
Devicetree changes for v4.2
2015-07-01 19:40:18 -07:00
of_gpio.h
gpio: defer probe if pinctrl cannot be found
2015-07-28 13:55:36 +02:00
of_graph.h
of: fix a build error to of_graph_get_endpoint_by_regs function
2015-06-24 11:18:48 +10:00
of_iommu.h
of_irq.h
of/platform: Assign MSI domain to platform device
2015-07-30 00:14:37 +02:00
of_mdio.h
of_mtd.h
of_net.h
of_pci.h
of_pdt.h
of_platform.h
of/platform: add function to populate default bus
2015-08-25 11:29:55 -05:00
of_reserved_mem.h
oid_registry.h
PKCS#7: Add OIDs for sha224, sha284 and sha512 hash algos and use them
2015-09-01 09:59:20 +10:00
olpc-ec.h
omap-dma.h
omap-dmaengine.h
omap-gpmc.h
omap-iommu.h
omap-mailbox.h
omapfb.h
oom.h
mm, oom: add description of struct oom_control
2015-09-08 15:35:28 -07:00
openvswitch.h
oprofile.h
osq_lock.h
oxu210hp.h
padata.h
page-flags-layout.h
page-flags.h
mm: introduce idle page tracking
2015-09-10 13:29:01 -07:00
page-isolation.h
mm, page_isolation: make set/unset_migratetype_isolate() file-local
2015-09-08 15:35:28 -07:00
page_counter.h
page_ext.h
mm: introduce idle page tracking
2015-09-10 13:29:01 -07:00
page_idle.h
mm: introduce idle page tracking
2015-09-10 13:29:01 -07:00
page_owner.h
mm/page_owner: set correct gfp_mask on page_owner
2015-07-17 16:39:54 -07:00
pageblock-flags.h
pagemap.h
Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs
2015-07-04 19:36:06 -07:00
pagevec.h
parport.h
parport: add device-model to parport subsystem
2015-06-01 07:08:18 +09:00
parport_pc.h
parser.h
pata_arasan_cf_data.h
Update Viresh Kumar's email address
2015-07-17 16:39:53 -07:00
patchkey.h
path.h
pch_dma.h
pci-acpi.h
pci-aspm.h
pci-ats.h
PCI: Move ATS declarations to linux/pci.h so they're all together
2015-08-13 15:59:58 -05:00
pci-dma.h
pci.h
pci: mm: add pci_pool_zalloc() call
2015-09-08 15:35:28 -07:00
pci_hotplug.h
pci_ids.h
[media] tw68: Move PCI vendor and device IDs to pci_ids.h
2015-08-16 13:26:01 -03:00
pcieport_if.h
pda_power.h
pe.h
percpu-defs.h
percpu: update incorrect comment for this_cpu_*() operations
2015-07-14 17:43:56 -04:00
percpu-refcount.h
percpu-rwsem.h
percpu-rwsem: introduce percpu_rwsem_release() and percpu_rwsem_acquire()
2015-08-15 13:52:10 +02:00
percpu.h
percpu_counter.h
percpu_counter: batch size aware __percpu_counter_compare()
2015-05-29 07:39:34 +10:00
percpu_ida.h
perf_event.h
perf: add the necessary core perf APIs when accessing events counters in eBPF programs
2015-08-09 22:50:05 -07:00
perf_regs.h
personality.h
pfn.h
phonet.h
phy.h
net: phy: Allow PHY devices to identify themselves as Ethernet switches, etc.
2015-08-31 14:48:01 -07:00
phy_fixed.h
phy: fixed_phy: Add gpio to determine link up/down.
2015-08-31 14:48:02 -07:00
pid.h
pid_namespace.h
pim.h
pipe_fs_i.h
pktcdvd.h
pl320-ipc.h
platform_device.h
platform_device: better support builtin boilerplate avoidance
2015-06-16 14:12:37 -04:00
plist.h
pm-trace.h
pm.h
Merge branch 'pm-wakeirq'
2015-06-19 01:18:14 +02:00
pm2301_charger.h
pm_clock.h
PM / clock_ops: Provide default runtime ops to users
2015-05-12 23:55:37 +02:00
pm_domain.h
PM / Domains: Remove unusable governor dummies
2015-08-29 01:54:43 +02:00
pm_opp.h
PM / OPP: add dev_pm_opp_is_turbo() helper
2015-08-07 03:17:06 +02:00
pm_qos.h
PM / QoS: Make it possible to expose device latency tolerance to userspace
2015-07-28 08:50:41 +01:00
pm_runtime.h
PM / sleep: Allow devices without runtime PM to do direct-complete
2015-07-21 23:14:22 +02:00
pm_wakeirq.h
PM / wakeirq: Fix typo in prototype for dev_pm_set_dedicated_wake_irq
2015-05-30 02:17:15 +02:00
pm_wakeup.h
PM / Wakeirq: Add automated device wake IRQ handling
2015-05-20 01:56:31 +02:00
pmem.h
x86, pmem: clarify that ARCH_HAS_PMEM_API implies PMEM mapped WB
2015-08-27 19:40:59 -04:00
pmu.h
pnfs_osd_xdr.h
pnp.h
poison.h
include/linux/poison.h: remove not-used poison pointer macros
2015-09-10 13:29:01 -07:00
poll.h
posix-clock.h
posix-timers.h
posix_acl.h
posix_acl_xattr.h
power_supply.h
power: Add devm_power_supply_get_by_phandle() helper function
2015-06-10 16:15:54 +02:00
powercap.h
ppp-comp.h
ppp_channel.h
ppp_defs.h
pps-gpio.h
pps_kernel.h
preempt.h
sched/preempt: Fix cond_resched_lock() and cond_resched_softirq()
2015-08-03 12:21:24 +02:00
prefetch.h
printk.h
hexdump: do not print debug dumps for !CONFIG_DEBUG
2015-09-10 13:29:01 -07:00
proc_fs.h
proc_ns.h
profile.h
projid.h
property.h
Add a matching set of device_ functions for determining mac/phy
2015-08-13 16:58:29 -07:00
proportions.h
proportions: Spelling s/consitent/consistent/
2015-08-07 14:37:04 +02:00
psci.h
arm64: psci: factor invocation code to drivers
2015-08-03 12:33:39 +01:00
pstore.h
pstore_ram.h
pti.h
ptp_classify.h
ptp_clock_kernel.h
ptrace.h
seccomp: add ptrace options for suspend/resume
2015-07-15 11:52:52 -07:00
pvclock_gtod.h
pwm.h
pwm: Clean up kerneldoc
2015-08-17 15:40:20 +02:00
pwm_backlight.h
pxa2xx_ssp.h
spi: pxa2xx: Add support for Intel Sunrisepoint
2015-07-31 19:13:33 +01:00
pxa168_eth.h
qcom_scm.h
firmware: qcom: scm: Add HDCP Support
2015-05-28 10:47:45 -05:00
qnx6_fs.h
quicklist.h
quota.h
quotaops.h
quota: Propagate error from ->acquire_dquot()
2015-07-23 20:59:10 +02:00
radix-tree.h
raid_class.h
ramfs.h
random.h
random: Remove kernel blocking API
2015-06-10 19:14:04 +08:00
range.h
ras.h
ratelimit.h
rational.h
rbtree.h
rbtree: Make lockless searches non-fatal
2015-05-28 11:32:04 +09:30
rbtree_augmented.h
rbtree: Make lockless searches non-fatal
2015-05-28 11:32:04 +09:30
rbtree_latch.h
rbtree: Implement generic latch_tree
2015-05-28 11:32:06 +09:30
rculist.h
rculist: Fix another sparse warning
2015-05-27 12:58:04 -07:00
rculist_bl.h
rculist_nulls.h
rcupdate.h
rcu: Rename rcu_lockdep_assert() to RCU_LOCKDEP_WARN()
2015-07-22 15:27:32 -07:00
rcutiny.h
rcu: Add RCU-sched flavors of get-state and cond-sync
2015-07-22 15:26:58 -07:00
rcutree.h
rcu: Add RCU-sched flavors of get-state and cond-sync
2015-07-22 15:26:58 -07:00
reboot.h
reciprocal_div.h
regmap.h
Merge remote-tracking branches 'regmap/topic/lockdep' and 'regmap/topic/seq-delay' into regmap-next
2015-09-04 17:22:10 +01:00
regset.h
relay.h
remoteproc.h
remoteproc: add a rproc ops for performing address translation
2015-06-17 09:57:12 +03:00
reservation.h
reset-controller.h
reset.h
reset: Add (devm_)reset_control_get stub functions
2015-09-01 09:56:58 +02:00
resource.h
resource_ext.h
rfkill-gpio.h
rfkill-regulator.h
rfkill.h
rhashtable.h
rhashtable: Add cap on number of elements in hash table
2015-05-16 18:08:26 -04:00
ring_buffer.h
rio.h
rapidio: Fix kerneldoc and comment
2015-05-26 15:23:23 +02:00
rio_drv.h
rio_ids.h
rio_regs.h
rmap.h
mm: send one IPI per CPU to TLB flush all entries after unmapping pages
2015-09-04 16:54:41 -07:00
rndis.h
root_dev.h
rotary_encoder.h
rpmsg.h
rslib.h
rtc-ds2404.h
rtc-v3020.h
rtc.h
rtc: interface: Remove rtc_set_mmss()
2015-06-25 01:13:43 +02:00
rtmutex.h
rtnetlink.h
switchdev; add VLAN support for port's bridge_getlink
2015-06-23 06:56:18 -07:00
rwlock.h
rwlock_api_smp.h
rwlock_types.h
rwsem-spinlock.h
rwsem.h
rxrpc.h
s3c_adc_battery.h
sa11x0-dma.h
scatterlist.h
lib: scatterlist: add sg splitting function
2015-08-24 14:28:01 -06:00
scc.h
sched.h
mm: defer flush of writable TLB entries
2015-09-04 16:54:41 -07:00
sched_clock.h
scif.h
misc: mic: SCIF header file and IOCTL interface
2015-05-24 12:13:36 -07:00
screen_info.h
sctp.h
scx200.h
scx200_gpio.h
sdb.h
sdla.h
seccomp.h
seccomp: swap hard-coded zeros to defined name
2015-07-15 11:52:54 -07:00
securebits.h
security.h
Merge branch 'next' of git://git.kernel.org/pub/scm/linux/kernel/git/jmorris/linux-security
2015-06-27 13:26:03 -07:00
selection.h
selinux.h
sem.h
semaphore.h
seq_buf.h
seq_file.h
seq_file: provide an analogue of print_hex_dump()
2015-09-10 13:29:01 -07:00
seq_file_net.h
seqlock.h
Minor merge needed, due to function move.
2015-07-01 10:49:25 -07:00
seqno-fence.h
serial.h
serial_8250.h
tty/early: make serial8250_early_{in,out} static again
2015-07-23 17:43:30 -07:00
serial_bcm63xx.h
serial_core.h
serial_max3100.h
serial_pnx8xxx.h
serial_s3c.h
serial_sci.h
serio.h
Input: i8042 - add unmask_kbd_data option
2015-07-16 10:30:55 -07:00
sfi.h
sfi_acpi.h
sh_clk.h
sh_dma.h
sh_eth.h
sh_intc.h
sh_timer.h
shdma-base.h
dmaengine: shdma: Make dummy shdma_chan_filter() always return false
2015-08-05 08:48:00 +05:30
shm.h
shmem_fs.h
shrinker.h
signal.h
signalfd.h
sirfsoc_dma.h
sizes.h
skbuff.h
flow_dissector: Use 'const' where possible.
2015-09-01 21:19:17 -07:00
slab.h
slab: infrastructure for bulk object allocation and freeing
2015-09-04 16:54:41 -07:00
slab_def.h
slub_def.h
sm501-regs.h
sm501.h
smc91x.h
smc911x.h
smp.h
smpboot.h
smpboot: allow passing the cpumask on per-cpu thread registration
2015-09-04 16:54:41 -07:00
smsc911x.h
smscphy.h
sock_diag.h
sock_diag: define destruction multicast groups
2015-06-15 19:49:22 -07:00
socket.h
sonet.h
sony-laptop.h
sonypi.h
sort.h
sound.h
soundcard.h
spinlock.h
Merge branch 'x86-asm-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip
2015-09-01 08:40:25 -07:00
spinlock_api_smp.h
spinlock_api_up.h
spinlock_types.h
spinlock_types_up.h
spinlock_up.h
splice.h
spmi.h
srcu.h
ssbi.h
stackprotector.h
stacktrace.h
start_kernel.h
stat.h
statfs.h
static_key.h
stddef.h
stddef.h: move offsetofend inside #ifndef/#endif guard, neaten
2015-06-25 17:00:38 -07:00
ste_modem_shm.h
stmmac.h
stmmac: remove setup/free glue callbacks
2015-07-29 00:13:25 -07:00
stmp3xxx_rtc_wdt.h
stmp_device.h
stop_machine.h
stop_machine: Use 'cpu_stop_fn_t' where possible
2015-08-03 12:21:27 +02:00
string.h
lib/string.c: introduce strreplace()
2015-06-25 17:00:40 -07:00
string_helpers.h
lib/string_helpers: rename "esc" arg to "only"
2015-09-10 13:29:01 -07:00
stringify.h
sudmac.h
sungem_phy.h
sunserialcore.h
superhyway.h
suspend.h
svga.h
sw842.h
swab.h
swap.h
mm: swap: zswap: maybe_preload & refactoring
2015-09-08 15:35:28 -07:00
swap_cgroup.h
swapfile.h
swapops.h
mm/hwpoison: fix race between soft_offline_page and unpoison_memory
2015-09-08 15:35:28 -07:00
swiotlb.h
sxgbe_platform.h
synclink.h
sys.h
sys_soc.h
syscalls.h
sys_membarrier(): system-wide memory barrier (generic, x86)
2015-09-11 15:21:34 -07:00
syscore_ops.h
sysctl.h
sysctl: Allow creating permanently empty directories that serve as mountpoints.
2015-07-01 10:36:39 -05:00
sysfs.h
sysfs: Add support for permanently empty directories to serve as mount points.
2015-07-01 10:36:45 -05:00
syslog.h
check_syslog_permissions() cleanup
2015-06-25 17:00:39 -07:00
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
Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net
2015-05-23 01:22:35 -04:00
textsearch.h
textsearch_fsm.h
tfrc.h
thermal.h
thermal: support slope and offset coefficients
2015-05-11 19:46:52 -07:00
thinkpad_acpi.h
thread_info.h
threads.h
ti_wilink_st.h
Revert "ti-st: add device tree support"
2015-08-05 13:24:12 -07:00
tick.h
nohz: Remove useless argument on tick_nohz_task_switch()
2015-07-29 15:45:01 +02:00
tifm.h
timb_dma.h
timb_gpio.h
time.h
time64.h
time: Introduce struct itimerspec64
2015-08-17 11:25:28 -07:00
timecounter.h
timekeeper_internal.h
time: Prevent early expiry of hrtimers[CLOCK_REALTIME] at the leap second edge
2015-06-12 11:15:49 +02:00
timekeeping.h
Merge branch 'fortglx/4.3/time' of https://git.linaro.org/people/john.stultz/linux into timers/core
2015-08-20 21:13:22 +02:00
timer.h
timer: Reduce timer migration overhead if disabled
2015-06-19 15:18:28 +02:00
timerfd.h
timeriomem-rng.h
timerqueue.h
timex.h
topology.h
sched/topology: Rename topology_thread_cpumask() to topology_sibling_cpumask()
2015-05-27 15:22:15 +02:00
torture.h
toshiba.h
tpm.h
tpm_command.h
trace_clock.h
trace_events.h
tracing, perf: Implement BPF programs attached to uprobes
2015-08-06 15:29:14 -03:00
trace_seq.h
tracefs.h
tracehook.h
tracepoint.h
transport_class.h
tsacct_kern.h
tty.h
tty: core: Add tty_debug() for printk(KERN_DEBUG) messages
2015-07-23 18:37:31 -07:00
tty_driver.h
Avoid usb reset crashes by making tty_io cdevs truly dynamic
2015-08-03 15:24:43 -07:00
tty_flip.h
tty_ldisc.h
typecheck.h
types.h
rcu: Create a synchronize_rcu_mult()
2015-07-22 15:27:29 -07:00
u64_stats_sync.h
net: make u64_stats_init() a function
2015-06-15 16:02:52 -07:00
uaccess.h
lib: introduce strncpy_from_unsafe()
2015-08-28 16:27:27 -07:00
ucb1400.h
ucs2_string.h
udp.h
uidgid.h
uidgid: make uid_valid and gid_valid work with !CONFIG_MULTIUSER
2015-05-14 17:55:51 -07:00
uinput.h
uio.h
uio_driver.h
uprobes.h
uprobes/x86: Make arch_uretprobe_is_alive(RP_CHECK_CALL) more clever
2015-07-31 10:38:06 +02:00
usb.h
Revert "usb: interface authorization: Declare authorized attribute"
2015-08-18 09:59:12 -07:00
usb_usual.h
usbdevice_fs.h
user-return-notifier.h
user.h
user_namespace.h
userfaultfd_k.h
userfaultfd: mcopy_atomic|mfill_zeropage: UFFDIO_COPY|UFFDIO_ZEROPAGE preparation
2015-09-04 16:54:41 -07:00
util_macros.h
uts.h
utsname.h
uuid.h
uwb.h
verify_pefile.h
PKCS#7: Appropriately restrict authenticated attributes and content type
2015-08-12 17:01:01 +01:00
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: add explicit big-endian support to memory accessors
2015-06-01 15:48:54 +02:00
virtio_caif.h
virtio_config.h
virtio: add explicit big-endian support to memory accessors
2015-06-01 15:48:54 +02:00
virtio_console.h
virtio_mmio.h
virtio_ring.h
vlynq.h
vm_event_item.h
vm_sockets.h
vmacache.h
vmalloc.h
vme.h
vme: export vme_check_window()
2015-06-12 17:26:57 -07:00
vmpressure.h
vmstat.h
vmw_vmci_api.h
vmw_vmci_defs.h
vringh.h
virtio: add explicit big-endian support to memory accessors
2015-06-01 15:48:54 +02:00
vt.h
vt_buffer.h
vt_kern.h
vtime.h
w1-gpio.h
wait.h
userfaultfd: waitqueue: add nr wake parameter to __wake_up_locked_key
2015-09-04 16:54:41 -07:00
wanrouter.h
watchdog.h
kernel/watchdog: move NMI function header declarations from watchdog.h to nmi.h
2015-09-04 16:54:41 -07:00
wireless.h
wl12xx.h
wm97xx.h
workqueue.h
workqueue: fix some docbook warnings
2015-08-17 15:48:24 -04:00
writeback.h
writeback: implement foreign cgroup inode detection
2015-06-02 08:40:20 -06:00
ww_mutex.h
xattr.h
xz.h
yam.h
z2_battery.h
zbud.h
mm: zbud: constify the zbud_ops
2015-09-08 15:35:28 -07:00
zconf.h
zlib.h
zorro.h
zpool.h
zpool: add zpool_has_pool()
2015-09-10 13:29:01 -07:00
zsmalloc.h
zsmalloc: account the number of compacted pages
2015-09-08 15:35:28 -07:00
zutil.h