linux_old1/include/linux
Wang Nan 9ecda41acb perf/core: Add ::write_backward attribute to perf event
This patch introduces 'write_backward' bit to perf_event_attr, which
controls the direction of a ring buffer. After set, the corresponding
ring buffer is written from end to beginning. This feature is design to
support reading from overwritable ring buffer.

Ring buffer can be created by mapping a perf event fd. Kernel puts event
records into ring buffer, user tooling like perf fetch them from
address returned by mmap(). To prevent racing between kernel and tooling,
they communicate to each other through 'head' and 'tail' pointers.
Kernel maintains 'head' pointer, points it to the next free area (tail
of the last record). Tooling maintains 'tail' pointer, points it to the
tail of last consumed record (record has already been fetched). Kernel
determines the available space in a ring buffer using these two
pointers to avoid overwrite unfetched records.

By mapping without 'PROT_WRITE', an overwritable ring buffer is created.
Different from normal ring buffer, tooling is unable to maintain 'tail'
pointer because writing is forbidden. Therefore, for this type of ring
buffers, kernel overwrite old records unconditionally, works like flight
recorder. This feature would be useful if reading from overwritable ring
buffer were as easy as reading from normal ring buffer. However,
there's an obscure problem.

The following figure demonstrates a full overwritable ring buffer. In
this figure, the 'head' pointer points to the end of last record, and a
long record 'E' is pending. For a normal ring buffer, a 'tail' pointer
would have pointed to position (X), so kernel knows there's no more
space in the ring buffer. However, for an overwritable ring buffer,
kernel ignore the 'tail' pointer.

   (X)                              head
    .                                |
    .                                V
    +------+-------+----------+------+---+
    |A....A|B.....B|C........C|D....D|   |
    +------+-------+----------+------+---+

Record 'A' is overwritten by event 'E':

      head
       |
       V
    +--+---+-------+----------+------+---+
    |.E|..A|B.....B|C........C|D....D|E..|
    +--+---+-------+----------+------+---+

Now tooling decides to read from this ring buffer. However, none of these
two natural positions, 'head' and the start of this ring buffer, are
pointing to the head of a record. Even the full ring buffer can be
accessed by tooling, it is unable to find a position to start decoding.

The first attempt tries to solve this problem AFAIK can be found from
[1]. It makes kernel to maintain 'tail' pointer: updates it when ring
buffer is half full. However, this approach introduces overhead to
fast path. Test result shows a 1% overhead [2]. In addition, this method
utilizes no more tham 50% records.

Another attempt can be found from [3], which allows putting the size of
an event at the end of each record. This approach allows tooling to find
records in a backward manner from 'head' pointer by reading size of a
record from its tail. However, because of alignment requirement, it
needs 8 bytes to record the size of a record, which is a huge waste. Its
performance is also not good, because more data need to be written.
This approach also introduces some extra branch instructions to fast
path.

'write_backward' is a better solution to this problem.

Following figure demonstrates the state of the overwritable ring buffer
when 'write_backward' is set before overwriting:

       head
        |
        V
    +---+------+----------+-------+------+
    |   |D....D|C........C|B.....B|A....A|
    +---+------+----------+-------+------+

and after overwriting:
                                     head
                                      |
                                      V
    +---+------+----------+-------+---+--+
    |..E|D....D|C........C|B.....B|A..|E.|
    +---+------+----------+-------+---+--+

In each situation, 'head' points to the beginning of the newest record.
From this record, tooling can iterate over the full ring buffer and fetch
records one by one.

The only limitation that needs to be considered is back-to-back reading.
Due to the non-deterministic of user programs, it is impossible to ensure
the ring buffer keeps stable during reading. Consider an extreme situation:
tooling is scheduled out after reading record 'D', then a burst of events
come, eat up the whole ring buffer (one or multiple rounds). When the
tooling process comes back, reading after 'D' is incorrect now.

To prevent this problem, we need to find a way to ensure the ring buffer
is stable during reading. ioctl(PERF_EVENT_IOC_PAUSE_OUTPUT) is
suggested because its overhead is lower than
ioctl(PERF_EVENT_IOC_ENABLE).

By carefully verifying 'header' pointer, reader can avoid pausing the
ring-buffer. For example:

    /* A union of all possible events */
    union perf_event event;

    p = head = perf_mmap__read_head();
    while (true) {
        /* copy header of next event */
        fetch(&event.header, p, sizeof(event.header));

        /* read 'head' pointer */
        head = perf_mmap__read_head();

        /* check overwritten: is the header good? */
        if (!verify(sizeof(event.header), p, head))
            break;

        /* copy the whole event */
        fetch(&event, p, event.header.size);

        /* read 'head' pointer again */
        head = perf_mmap__read_head();

        /* is the whole event good? */
        if (!verify(event.header.size, p, head))
            break;
        p += event.header.size;
    }

However, the overhead is high because:

 a) In-place decoding is not safe.
    Copying-verifying-decoding is required.
 b) Fetching 'head' pointer requires additional synchronization.

(From Alexei Starovoitov:

Even when this trick works, pause is needed for more than stability of
reading. When we collect the events into overwrite buffer we're waiting
for some other trigger (like all cpu utilization spike or just one cpu
running and all others are idle) and when it happens the buffer has
valuable info from the past. At this point new events are no longer
interesting and buffer should be paused, events read and unpaused until
next trigger comes.)

This patch utilizes event's default overflow_handler introduced
previously. perf_event_output_backward() is created as the default
overflow handler for backward ring buffers. To avoid extra overhead to
fast path, original perf_event_output() becomes __perf_event_output()
and marked '__always_inline'. In theory, there's no extra overhead
introduced to fast path.

Performance testing:

Calling 3000000 times of 'close(-1)', use gettimeofday() to check
duration.  Use 'perf record -o /dev/null -e raw_syscalls:*' to capture
system calls. In ns.

Testing environment:

  CPU    : Intel(R) Core(TM) i7-4790 CPU @ 3.60GHz
  Kernel : v4.5.0
                    MEAN         STDVAR
 BASE            800214.950    2853.083
 PRE1           2253846.700    9997.014
 PRE2           2257495.540    8516.293
 POST           2250896.100    8933.921

Where 'BASE' is pure performance without capturing. 'PRE1' is test
result of pure 'v4.5.0' kernel. 'PRE2' is test result before this
patch. 'POST' is test result after this patch. See [4] for the detailed
experimental setup.

Considering the stdvar, this patch doesn't introduce performance
overhead to the fast path.

 [1] http://lkml.iu.edu/hypermail/linux/kernel/1304.1/04584.html
 [2] http://lkml.iu.edu/hypermail/linux/kernel/1307.1/00535.html
 [3] http://lkml.iu.edu/hypermail/linux/kernel/1512.0/01265.html
 [4] http://lkml.kernel.org/g/56F89DCD.1040202@huawei.com

Signed-off-by: Wang Nan <wangnan0@huawei.com>
Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Acked-by: Alexei Starovoitov <ast@kernel.org>
Cc: <acme@kernel.org>
Cc: <pi3orama@163.com>
Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com>
Cc: Arnaldo Carvalho de Melo <acme@redhat.com>
Cc: Brendan Gregg <brendan.d.gregg@gmail.com>
Cc: He Kuang <hekuang@huawei.com>
Cc: Jiri Olsa <jolsa@kernel.org>
Cc: Jiri Olsa <jolsa@redhat.com>
Cc: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Masami Hiramatsu <masami.hiramatsu.pt@hitachi.com>
Cc: Namhyung Kim <namhyung@kernel.org>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Stephane Eranian <eranian@google.com>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: Vince Weaver <vincent.weaver@maine.edu>
Cc: Zefan Li <lizefan@huawei.com>
Link: http://lkml.kernel.org/r/1459865478-53413-1-git-send-email-wangnan0@huawei.com
[ Fixed the changelog some more. ]
Signed-off-by: Ingo Molnar <mingo@kernel.org>

Signed-off-by: Ingo Molnar <mingo@kernel.org>
2016-04-23 14:12:39 +02:00
..
amba drivers/hwtracing: make coresight-* explicitly non-modular 2016-02-20 14:11:01 -08:00
bcma bcma: move parallel flash support to separated file 2016-03-07 14:41:08 +02:00
byteorder
can
ceph mm, fs: get rid of PAGE_CACHE_* and page_cache_{get,release} macros 2016-04-04 10:41:08 -07:00
clk The clk changes for this release cycle are mostly dominated by 2016-03-23 06:06:45 -07:00
crush crush: add chooseleaf_stable tunable 2016-02-04 18:25:55 +01:00
decompress
dma
extcon
fpga
fsl powerpc/rcpm: add RCPM driver 2016-03-04 23:50:27 -06:00
gpio gpio: Add devm_ apis for gpiochip_add_data and gpiochip_remove 2016-02-23 19:40:33 +05:30
hsi
i2c
iio iio: Fix typos in the struct iio_event_spec documentation comments 2016-02-17 21:11:08 +00:00
input Input: cyttsp - switch to using device properties 2016-01-27 14:32:48 -08:00
irqchip MIPS: Make smp CMP, CPS and MT use the new generic IPI functions 2016-02-25 10:56:58 +01:00
isdn
lockd lockd: constify nlmsvc_binding structure 2016-01-07 10:10:50 -05:00
mfd MMC core: 2016-03-21 14:35:52 -07:00
mlx4 Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next 2016-03-19 10:05:34 -07:00
mlx5 Round two of 4.6 merge window patches 2016-03-22 15:48:44 -07:00
mmc mmc: dw_mmc: remove DW_MCI_QUIRK_BROKEN_CARD_DETECTION quirk 2016-02-29 11:03:10 +01:00
mtd mtd: nand: don't select chip in nand_chip's block_bad op 2016-03-10 10:52:21 -08:00
netfilter netfilter: ipset: fix race condition in ipset save, swap and delete 2016-03-28 17:57:45 +02:00
netfilter_arp netfilter: xtables: prepare for on-demand hook register 2016-03-02 20:05:23 +01:00
netfilter_bridge
netfilter_ipv4 netfilter: xtables: prepare for on-demand hook register 2016-03-02 20:05:23 +01:00
netfilter_ipv6 netfilter: xtables: prepare for on-demand hook register 2016-03-02 20:05:23 +01:00
perf drivers/perf: arm_pmu: implement CPU_PM notifier 2016-02-26 14:37:06 +00:00
phy phy: omap-usb2: use *syscon* framework API to power on/off the PHY 2015-12-21 14:26:28 +05:30
pinctrl
platform_data MTD updates for v4.6 2016-03-24 19:57:15 -07:00
power power supply and reset changes for the v4.6 series 2016-03-17 12:50:55 -07:00
qed qed/qede: Add infrastructure support for hardware GRO 2016-03-07 15:01:39 -05:00
raid raid6/algos.c : bug fix : Add the missing definitions to the pq.h file 2016-01-21 14:47:08 -08:00
regulator Merge remote-tracking branches 'regulator/topic/discharge', 'regulator/topic/fan53555', 'regulator/topic/gpio', 'regulator/topic/hi655x' and 'regulator/topic/lp872x' into regulator-next 2016-03-13 15:19:35 +07:00
reset
rtc
sched mm: move max_map_count bits into mm.h 2016-03-17 15:09:34 -07:00
soc Merge branch 'mailbox-for-next' of git://git.linaro.org/landing-teams/working/fujitsu/integration 2016-03-23 06:09:15 -07:00
spi Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input 2016-03-17 21:51:52 -07:00
ssb ssb: pick SoC invariants code from MIPS BCM47xx arch 2015-12-16 16:36:25 +02:00
sunrpc mm, fs: remove remaining PAGE_CACHE_* and page_cache_{get,release} usage 2016-04-04 10:41:08 -07:00
ulpi
unaligned include/linux/unaligned: force inlining of byteswap operations 2016-03-17 15:09:34 -07:00
usb USB: core: let USB device know device node 2016-03-05 12:05:01 -08:00
uwb
wimax
8250_pci.h
a.out.h
acct.h
acpi.h Merge branches 'acpi-pci', 'acpi-irq' and 'acpi-assorted' 2016-01-12 01:10:19 +01:00
acpi_dma.h
acpi_pmtmr.h
adb.h
adfs_fs.h
aer.h PCI/AER: include header file 2015-12-23 08:37:10 -07:00
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-gmux.h apple-gmux: Fix build breakage if !CONFIG_ACPI 2016-02-11 09:23:59 +01:00
apple_bl.h
arm-cci.h
arm-smccc.h ARM: 8478/2: arm/arm64: add arm-smccc 2016-01-04 16:19:57 +00:00
asn1.h
asn1_ber_bytecode.h
asn1_decoder.h
assoc_array.h
assoc_array_priv.h
async.h
async_tx.h
ata.h libata: fix HDIO_GET_32BIT ioctl 2016-02-11 10:07:18 -05:00
ata_platform.h
atalk.h
ath9k_platform.h
atm.h
atm_suni.h
atm_tcp.h
atmdev.h
atmel-mci.h mmc: atmel: get rid of struct mci_dma_data 2016-01-14 13:40:30 +01:00
atmel-ssc.h
atmel_pdc.h
atmel_serial.h tty/serial: at91: fix bad offset for UART timeout register 2016-03-07 16:11:14 -08:00
atmel_tc.h
atomic.h locking/atomic, sched: Unexport fetch_or() 2016-03-29 11:52:11 +02:00
attribute_container.h
audit.h tty: audit: Handle tty audit enable atomically 2016-01-27 16:41:04 -08:00
auto_dev-ioctl.h autofs4: fix string.h include in auto_dev-ioctl.h 2016-03-15 16:55:16 -07:00
auto_fs.h autofs4: coding style fixes 2016-03-15 16:55:16 -07:00
auxvec.h
average.h
b1pcmcia.h
backing-dev-defs.h mm, fs: remove remaining PAGE_CACHE_* and page_cache_{get,release} usage 2016-04-04 10:41:08 -07:00
backing-dev.h
backlight.h
badblocks.h block, badblocks: introduce devm_init_badblocks 2016-01-09 08:39:04 -08:00
balloon_compaction.h
bcd.h
bch.h
bcm47xx_nvram.h
bcm47xx_wdt.h watchdog: bcm47xx_wdt: use core reboot notifier 2015-12-13 15:55:55 +01:00
bcm963xx_nvram.h MIPS: bcm963xx: Add Broadcom BCM963xx board nvram data structure 2016-01-24 03:47:37 +01:00
bcm963xx_tag.h MIPS: bcm963xx: Update bcm_tag field image_sequence 2016-01-24 03:49:03 +01:00
bfin_mac.h
binfmts.h
bio.h mm, fs: get rid of PAGE_CACHE_* and page_cache_{get,release} macros 2016-04-04 10:41:08 -07:00
bit_spinlock.h
bitmap.h lib/bitmap.c: conversion routines to/from u32 array 2016-02-19 22:54:09 -05:00
bitops.h bitops.h: correctly handle rol32 with 0 byte shift 2015-12-09 10:35:16 -08:00
bitrev.h
blk-cgroup.h
blk-mq.h blk-mq: Use proper cpumask iterator 2016-03-20 09:34:02 -06:00
blk_types.h block: remove REQ_NO_TIMEOUT flag 2015-12-22 09:38:34 -07:00
blkdev.h mm, fs: get rid of PAGE_CACHE_* and page_cache_{get,release} macros 2016-04-04 10:41:08 -07:00
blkpg.h
blktrace_api.h
blockgroup_lock.h
bma150.h
bootmem.h x86/mm: Introduce max_possible_pfn 2015-12-06 12:46:31 +01:00
bottom_half.h
bpf.h bpf: convert stackmap to pre-allocation 2016-03-08 15:28:31 -05:00
brcmphy.h net: phy: bcm7xxx: Add entries for Broadcom BCM7346 and BCM7362 2016-03-25 11:37:57 -04:00
bsearch.h
bsg-lib.h
bsg.h
btree-128.h
btree-type.h
btree.h
btrfs.h
buffer_head.h mm, fs: get rid of PAGE_CACHE_* and page_cache_{get,release} macros 2016-04-04 10:41:08 -07:00
bug.h mm: Some arch may want to use HPAGE_PMD related values as variables 2016-03-03 21:18:29 +11:00
c2port.h
cache.h arch: Introduce post-init read-only memory 2016-02-22 08:51:38 +01:00
cacheinfo.h
capability.h cred/userns: define current_user_ns() as a function 2016-03-22 15:36:02 -07:00
cb710.h
cciss_ioctl.h
ccp.h crypto: ccp - CCP versioning support 2016-03-11 21:19:16 +08:00
cdev.h
cdrom.h
cfag12864b.h
cgroup-defs.h cgroup: ignore css_sets associated with dead cgroups during migration 2016-03-16 13:31:46 -07:00
cgroup.h cgroup: introduce cgroup namespaces 2016-02-16 13:04:58 -05:00
cgroup_subsys.h
circ_buf.h
cleancache.h include/linux/cleancache.h: Clean up code 2016-01-27 09:10:29 -05:00
clk-provider.h clk: Make of_clk_get_parent_count() return unsigned ints 2016-02-26 16:01:32 -08:00
clk.h
clkdev.h ARM: 8503/1: clk_register_clkdev: remove format string interface 2016-02-16 16:34:18 +00:00
clock_cooling.h
clockchips.h clockevents: Rename last parameter of clocks_calc_mult_shift() to maxsec 2016-01-27 12:38:03 +01:00
clocksource.h clocksource: Introduce clocksource_freq2mult() 2016-02-27 08:55:30 +01:00
cm4000_cs.h
cma.h
cmdline-parser.h
cn_proc.h
cnt32_to_63.h
coda.h
coda_psdev.h
compaction.h mm, compaction: introduce kcompactd 2016-03-17 15:09:34 -07:00
compat.h compat: add in_compat_syscall to ask whether we're in a compat syscall 2016-03-22 15:36:02 -07:00
compiler-clang.h Kbuild: provide a __UNIQUE_ID for clang 2016-02-08 19:04:55 +01:00
compiler-gcc.h compiler-gcc: disable -ftracer for __noclone functions 2016-04-05 14:19:08 +02:00
compiler-intel.h
compiler.h Merge commit 'fixes.2015.02.23a' into core/rcu 2016-03-15 09:01:06 +01:00
completion.h
component.h component: add support for releasing match data 2015-12-07 00:02:05 +00:00
concap.h
configfs.h configfs: fix CONFIGFS_BIN_ATTR_[RW]O definitions 2016-03-25 19:10:03 +01:00
connector.h
console.h printk: do cond_resched() between lines while outputting to consoles 2016-01-16 11:17:25 -08:00
console_struct.h
consolemap.h
container.h
context_tracking.h
context_tracking_state.h
cordic.h
coredump.h
coresight-pmu.h coresight: introducing a global trace ID function 2016-02-20 14:11:01 -08:00
coresight.h coresight: etb10: implementing AUX API 2016-02-20 14:11:01 -08:00
count_zeros.h
cper.h
cpu.h rcu: Make CPU_DYING_IDLE an explicit call 2016-03-01 20:36:58 +01:00
cpu_cooling.h
cpu_pm.h
cpu_rmap.h
cpufeature.h
cpufreq-dt.h
cpufreq.h Merge branch 'pm-cpufreq-governor' into pm-cpufreq 2016-03-10 20:46:03 +01:00
cpuhotplug.h cpu/hotplug: Make wait for dead cpu completion based 2016-03-01 20:36:58 +01:00
cpuidle.h
cpumask.h cpumask: remove incorrect information from comment 2016-03-22 15:36:02 -07:00
cpuset.h cpuset: make mm migration asynchronous 2016-01-22 10:22:46 -05:00
cputime.h
crash_dump.h
crc-ccitt.h
crc-itu-t.h
crc-t10dif.h
crc7.h
crc8.h
crc16.h
crc32.h
crc32c.h
cred.h cred/userns: define current_user_ns() as a function 2016-03-22 15:36:02 -07:00
crypto.h crypto: hash - Remove crypto_hash interface 2016-02-06 15:33:20 +08:00
cryptohash.h
cs5535.h
ctype.h
cuda.h
cyclades.h
davinci_emac.h misc: at24: replace memory_accessor with nvmem_device_read 2016-03-01 16:55:48 -08:00
dax.h dax: move writeback calls into the filesystems 2016-02-27 10:28:52 -08:00
dca.h
dcache.h fs: add file_dentry() 2016-03-26 16:14:37 -04:00
dccp.h
dcookies.h
debug_locks.h
debugfs.h debugfs: Add stub function for debugfs_create_automount(). 2016-02-07 22:26:47 -08:00
debugobjects.h
delay.h
delayacct.h
delayed_call.h switch ->get_link() to delayed_call, kill ->put_link() 2015-12-30 13:01:03 -05:00
dell-led.h
devcoredump.h
devfreq-event.h
devfreq.h PM / devfreq: Set the freq_table of devfreq device 2016-01-13 17:30:32 +09:00
devfreq_cooling.h
device-mapper.h dm snapshot: disallow the COW and origin devices from being identical 2016-03-10 17:12:09 -05:00
device.h The clk changes for this release cycle are mostly dominated by 2016-03-23 06:06:45 -07:00
device_cgroup.h
devpts_fs.h pty: make sure super_block is still valid in final /dev/tty close 2016-02-06 23:45:46 -08:00
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 ARM: 8506/1: common: DMA-mapping: add DMA_ATTR_ALLOC_SINGLE_PAGES attribute 2016-02-11 15:33:38 +00:00
dma-buf.h dma-buf, drm, ion: Propagate error code from dma_buf_start_cpu_access() 2016-03-19 11:03:49 +01:00
dma-contiguous.h
dma-debug.h
dma-direction.h
dma-iommu.h
dma-mapping.h virtio/vhost: new features, performance improvements, cleanups 2016-03-20 13:28:18 -07:00
dma_remapping.h
dmaengine.h Merge branch 'topic/pl330' into for-linus 2016-03-14 11:18:12 +05:30
dmapool.h
dmar.h
dmi.h firmware: dmi_scan: Save SMBIOS Type 9 System Slots 2016-01-15 22:08:45 +01:00
dnotify.h
dns_resolver.h
dqblk_qtree.h quota_v2: Implement get_next_id() for V2 quota format 2016-02-09 13:05:23 +01:00
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 EDAC: Unexport and make edac_subsys static 2015-12-11 16:56:40 +01:00
edd.h
edma.h
eeprom_93cx6.h
eeprom_93xx46.h misc: eeprom_93xx46: Add support for a GPIO 'select' line. 2016-02-11 19:23:28 -08:00
efi-bgrt.h
efi.h Merge branch 'efi-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip 2016-03-20 18:58:18 -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 ses: fix additional element traversal bug 2015-12-11 11:05:57 -08:00
err.h err.h: add (missing) unlikely() to IS_ERR_OR_NULL() 2016-01-16 11:17:24 -08:00
errno.h
errqueue.h
etherdevice.h net: Add eth_platform_get_mac_address() helper. 2016-01-06 16:31:56 -05:00
ethtool.h net: ethtool: remove unused __ethtool_get_settings 2016-02-25 22:06:47 -05:00
eventfd.h
eventpoll.h
evm.h evm: provide a function to set the EVM key from the kernel 2015-12-15 08:53:36 -05:00
export.h
exportfs.h staging/lustre: proper support of NFS anonymous dentries 2016-02-25 22:12:26 -08:00
ext2_fs.h
extcon.h
f2fs_fs.h mm, fs: get rid of PAGE_CACHE_* and page_cache_{get,release} macros 2016-04-04 10:41:08 -07:00
f75375s.h
falloc.h
fanotify.h
fault-inject.h mm: fault-inject take over bootstrap kmem_cache check 2016-03-15 16:55:16 -07:00
fb.h fbdev: kill fb_rotate 2016-02-26 13:28:35 +02:00
fcdevice.h
fcntl.h
fd.h
fddidevice.h
fdtable.h
fec.h
fence.h Merge branch 'drm-next' of git://people.freedesktop.org/~airlied/linux 2016-03-25 08:48:31 -07:00
file.h
filter.h tun, bpf: fix suspicious RCU usage in tun_{attach, detach}_filter 2016-04-01 14:33:46 -04: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
frame.h objtool: Add STACK_FRAME_NON_STANDARD() macro 2016-02-29 08:35:10 +01:00
freezer.h timer: convert timer_slack_ns from unsigned long to u64 2016-03-17 15:09:34 -07:00
frontswap.h
fs.h These changes contains a fix for overlayfs interacting with some 2016-04-07 17:22:20 -07:00
fs_enet_pd.h
fs_pin.h
fs_stack.h
fs_struct.h
fs_uart_pd.h
fscache-cache.h
fscache.h
fscrypto.h fscrypto: don't let data integrity writebacks fail with ENOMEM 2016-04-12 10:25:30 -07:00
fsl-diu-fb.h
fsl_devices.h
fsl_hypervisor.h
fsl_ifc.h
fsldma.h
fsnotify.h untangle fsnotify_d_instantiate() a bit 2016-03-14 00:17:28 -04:00
fsnotify_backend.h Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs 2016-03-19 18:52:29 -07:00
ftrace.h arch, ftrace: for KASAN put hard/soft IRQ entries into separate sections 2016-03-25 16:37:42 -07:00
ftrace_irq.h
futex.h
fwnode.h
gameport.h
gcd.h
genalloc.h genalloc:support allocating specific region 2015-12-22 17:10:17 -06:00
genetlink.h
genhd.h block: kill disk_{check|set|clear|alloc}_badblocks 2016-01-09 22:42:31 -08:00
genl_magic_func.h
genl_magic_struct.h
getcpu.h
gfp.h mm: exclude ZONE_DEVICE from GFP_ZONE_TABLE 2016-03-17 15:09:34 -07:00
glob.h
goldfish.h
gpio-fan.h
gpio-pxa.h
gpio.h Revert "gpio: remove broken irq_to_gpio() interface" 2016-02-20 12:53:31 +01:00
gpio_keys.h
gpio_mouse.h
hardirq.h
hash.h
hashtable.h
hdlc.h WAN: HDLC: Call notifiers before and after changing device type 2015-12-05 17:41:42 -05:00
hdlcdrv.h
hdmi.h
hid-debug.h
hid-roccat.h
hid-sensor-hub.h
hid-sensor-ids.h
hid.h HID: add a new helper to_hid_driver() 2015-12-28 13:41:50 +01:00
hiddev.h
hidraw.h
highmem.h
highuid.h
hil.h
hil_mlc.h
hippidevice.h
host1x.h
hp_sdc.h
hpet.h
hrtimer.h timer: convert timer_slack_ns from unsigned long to u64 2016-03-17 15:09:34 -07:00
htcpld.h
htirq.h
huge_mm.h include/linux/huge_mm.h: return NULL instead of false for pmd_trans_huge_lock() 2016-04-01 17:03:37 -05:00
hugetlb.h hugetlb: fix compile error on tile 2016-01-15 17:56:32 -08:00
hugetlb_cgroup.h
hugetlb_inline.h
hw_breakpoint.h
hw_random.h
hwmon-sysfs.h
hwmon-vid.h
hwmon.h
hwspinlock.h
hyperv.h Drivers: hv: util: Pass the channel information during the init call 2016-03-01 16:57:20 -08: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: create builtin_i2c_driver to avoid registration boilerplate 2016-01-13 11:06:03 +01:00
i7300_idle.h
i8042.h
i8253.h
icmp.h
icmpv6.h
ide.h
idr.h
ieee80211.h mac80211: limit the A-MSDU Tx based on peer's capabilities 2016-02-24 09:04:20 +01:00
ieee802154.h
if_arp.h
if_bridge.h bridge: allow zero ageing time 2016-03-11 14:58:58 -05:00
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_team.h team: track sum of rx_nohandler for all slaves 2016-02-06 02:59:51 -05:00
if_tun.h
if_tunnel.h
if_vlan.h net: Eliminate NETIF_F_GEN_CSUM and NETIF_F_V[46]_CSUM 2015-12-15 16:50:20 -05:00
igmp.h igmp: Namespacify igmp_qrv sysctl knob 2016-02-11 09:59:22 -05:00
ihex.h
ima.h module: replace copy_module_from_fd with kernel version 2016-02-21 09:06:12 -05:00
in.h
in6.h
inet.h
inet_diag.h net: diag: Support SOCK_DESTROY for inet sockets. 2015-12-15 23:26:51 -05:00
inetdevice.h
init.h asm-generic: Consolidate mark_rodata_ro() 2016-02-22 08:51:37 +01:00
init_ohci1394_dma.h
init_task.h
initrd.h
inotify.h
input-polldev.h
input.h
integrity.h
intel-iommu.h iommu/vt-d: Clear PPR bit to ensure we get more page request interrupts 2016-02-15 12:42:38 +00:00
intel-svm.h
intel_pmic_gpio.h
interrupt.h arch, ftrace: for KASAN put hard/soft IRQ entries into separate sections 2016-03-25 16:37:42 -07:00
interval_tree.h
interval_tree_generic.h
io-64-nonatomic-hi-lo.h
io-64-nonatomic-lo-hi.h
io-mapping.h
io.h memremap: add MEMREMAP_WC flag 2016-03-22 15:36:02 -07:00
ioc3.h
ioc4.h
iocontext.h
iommu-common.h
iommu-helper.h
iommu.h iommu: provide of_xlate pointer unconditionally 2016-04-05 13:25:12 +02:00
iopoll.h
ioport.h libnvdimm for 4.6 2016-03-16 17:45:56 -07:00
ioprio.h
iova.h
ip.h
ipack.h
ipc.h
ipc_namespace.h
ipmi-fru.h
ipmi.h
ipmi_smi.h
ipv6.h net: ipv6: Make address flushing on ifdown optional 2016-02-25 21:45:15 -05:00
ipv6_route.h
irq.h Merge branch 'irq-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip 2016-03-15 12:48:48 -07:00
irq_cpustat.h
irq_poll.h irq_poll: remove unused data and max fields 2015-12-11 11:52:29 -08:00
irq_work.h
irqbypass.h
irqchip.h
irqdesc.h genirq: Free irq_desc with rcu 2015-12-14 10:03:46 +01:00
irqdomain.h Staging driver patches for 4.6-rc1 2016-03-17 22:13:41 -07:00
irqflags.h
irqhandler.h
irqnr.h
irqreturn.h
isa.h
isapnp.h
iscsi_boot_sysfs.h iscsi_ibft: Add prefix-len attr and display netmask 2016-03-14 10:30:57 -04:00
iscsi_ibft.h
isdn.h isdn: Remove ASYNC_CLOSING 2016-01-28 14:19:12 -08:00
isdn_divertif.h
isdn_ppp.h
isdnif.h
isicom.h
jbd2.h jbd2: unify revoke and tag block checksum handling 2016-02-22 23:19:09 -05:00
jhash.h
jiffies.h
journal-head.h
joystick.h
jump_label.h
jump_label_ratelimit.h
jz4740-adc.h
jz4780-nemc.h
kallsyms.h
kasan.h mm, kasan: add GFP flags to KASAN API 2016-03-25 16:37:42 -07:00
kbd_diacr.h
kbd_kern.h
kbuild.h
kconfig.h
kcore.h
kcov.h kernel: add kcov code coverage 2016-03-22 15:36:02 -07:00
kd.h
kdb.h
kdebug.h
kdev_t.h include/linux/kdev_t.h: remove new_valid_dev() 2016-01-16 11:17:23 -08:00
kern_levels.h
kernel-page-flags.h
kernel.h Nothing major this round. Mostly small clean ups and fixes. 2016-03-24 10:52:25 -07:00
kernel_stat.h
kernelcapi.h
kernfs.h kernfs: define kernfs_node_dentry 2016-02-16 13:04:58 -05:00
kexec.h kexec: move some memembers and definitions within the scope of CONFIG_KEXEC_FILE 2016-01-20 17:09:18 -08:00
key-type.h
key.h KEYS: Add an alloc flag to convey the builtinness of a key 2016-02-09 16:40:46 +00:00
keyboard.h
kfifo.h kfifo: fix sparse complaints 2016-03-22 15:36:02 -07:00
kgdb.h
khugepaged.h
klist.h
kmemcheck.h
kmemleak.h mm: kmemleak: mark kmemleak_init prototype as __init 2015-12-12 10:15:34 -08:00
kmod.h
kmsg_dump.h
kobj_map.h
kobject.h
kobject_ns.h
kprobes.h
kref.h
ks0108.h
ks8842.h
ks8851_mll.h
ksm.h
kthread.h
ktime.h
kvm_host.h KVM: Use simple waitqueue for vcpu->wq 2016-02-25 11:27:16 +01:00
kvm_irqfd.h
kvm_para.h
kvm_types.h kvm: rename pfn_t to kvm_pfn_t 2016-01-15 17:56:32 -08:00
l2tp.h
lapb.h
latencytop.h sched/debug: Make schedstats a runtime tunable that is disabled by default 2016-02-09 11:54:23 +01:00
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: core: avoid error message when a USB LED device is unplugged 2016-03-14 09:22:20 +01:00
leds_pwm.h
lglock.h
lguest.h
lguest_launcher.h
libata.h libata: Align ata_device's id on a cacheline 2016-02-25 16:37:06 -05:00
libfdt.h
libfdt_env.h
libnvdimm.h nfit: disable userspace initiated ars during scrub 2016-03-05 12:24:06 -08:00
libps2.h
license.h
lightnvm.h nvme: lightnvm: return ppa completion status 2016-03-18 18:10:38 -07:00
linkage.h
linux_logo.h
lis3lv02d.h
list.h list: kill list_force_poison() 2016-03-09 15:43:42 -08:00
list_bl.h include/linux/list_bl.h: use bool instead of int for boolean functions 2016-03-17 15:09:34 -07:00
list_lru.h mm: memcontrol: move kmem accounting code to CONFIG_MEMCG 2016-01-20 17:09:18 -08:00
list_nulls.h
list_sort.h
livepatch.h livepatch/module: remove livepatch module notifier 2016-03-17 09:45:10 +01:00
llc.h
llist.h
lockdep.h kernel/locking/lockdep.c: convert hash tables to hlists 2016-02-11 18:35:48 -08:00
lockref.h
log2.h
lp.h
lru_cache.h
lsm_audit.h
lsm_hooks.h module: replace copy_module_from_fd with kernel version 2016-02-21 09:06:12 -05:00
lz4.h lz4: fix wrong compress buffer size for 64-bits 2016-01-20 17:09:18 -08:00
lzo.h
m48t86.h
mISDNdsp.h
mISDNhw.h
mISDNif.h isdn: Use ktime_t instead of 'struct timeval' 2016-03-20 16:47:13 -04:00
mailbox_client.h
mailbox_controller.h
maple.h
marvell_phy.h
math64.h
max17040_battery.h
mbcache.h mbcache: add reusable flag to cache entries 2016-02-22 22:44:04 -05:00
mbus.h bus: mvebu-mbus: provide api for obtaining IO and DRAM window information 2016-03-14 12:19:46 -04:00
mc6821.h
mc146818rtc.h
mcb.h
mdio-bitbang.h
mdio-mux.h
mdio.h mdio: Abstract device_remove() and device_free() 2016-01-07 14:31:27 -05:00
mei_cl_bus.h
memblock.h memblock: fix section mismatch 2016-01-15 17:56:32 -08:00
memcontrol.h mm: workingset: make shadow node shrinker memcg aware 2016-03-17 15:09:34 -07:00
memory.h Char/Misc patches for 4.6-rc1 2016-03-17 13:47:50 -07:00
memory_hotplug.h mm/compaction: speed up pageblock_pfn_to_page() when zone is contiguous 2016-03-15 16:55:16 -07:00
mempolicy.h mm/mempolicy.c: convert the shared_policy lock to a rwlock 2016-01-14 16:00:49 -08:00
mempool.h
memremap.h mm, dax, pmem: introduce {get|put}_dev_pagemap() for dax-gup 2016-01-15 17:56:32 -08:00
memstick.h
mg_disk.h
mic_bus.h
micrel_phy.h
microchipphy.h
migrate.h mm, page_owner: track and print last migrate reason 2016-03-15 16:55:16 -07:00
migrate_mode.h
mii.h
miscdevice.h
mm-arch-hooks.h
mm.h Merge branch 'mm-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip 2016-04-14 19:31:34 -07:00
mm_inline.h mm: move lru_to_page to mm_inline.h 2016-01-14 16:00:49 -08:00
mm_types.h mm, fs: remove remaining PAGE_CACHE_* and page_cache_{get,release} usage 2016-04-04 10:41:08 -07:00
mman.h mm/core, arch, powerpc: Pass a protection key in to calc_vm_flag_bits() 2016-02-18 19:46:30 +01:00
mmdebug.h mm, debug: move bad flags printing to bad_page() 2016-03-15 16:55:16 -07:00
mmiotrace.h
mmu_context.h
mmu_notifier.h
mmzone.h mm: scale kswapd watermarks in proportion to memory 2016-03-17 15:09:34 -07:00
mnt_namespace.h
mod_devicetable.h Drivers: hv: vmbus: Use uuid_le type consistently 2015-12-14 19:15:05 -08:00
module.h modules: fix longstanding /proc/kallsyms vs module insertion race. 2016-02-03 16:58:15 +10:30
moduleloader.h
moduleparam.h
mount.h
mpage.h
mpi.h
mpls.h
mpls_iptunnel.h
mroute.h
mroute6.h
msdos_fs.h
msg.h
msi.h fsl-mc: msi: Added FSL-MC-specific member to the msi_desc's union 2016-02-07 19:10:12 -08:00
mutex-debug.h
mutex.h
mv643xx.h
mv643xx_eth.h
mv643xx_i2c.h
mvebu-pmsu.h
mxm-wmi.h
n_r3964.h
namei.h namei: teach lookup_slow() to skip revalidate 2016-03-14 00:15:46 -04:00
nd.h libnvdimm: async notification support 2016-03-05 12:24:06 -08:00
net.h net: Make sock_alloc exportable 2016-03-09 16:36:13 -05:00
netdev_features.h net: add tc offload feature flag 2016-02-17 09:47:36 -05:00
netdevice.h GRE: Disable segmentation offloads w/ CSUM and we are encapsulated via FOU 2016-04-07 16:56:33 -04:00
netfilter.h netfilter: don't call hooks unless needed 2016-03-02 20:05:26 +01:00
netfilter_bridge.h
netfilter_defs.h
netfilter_ingress.h
netfilter_ipv4.h
netfilter_ipv6.h
netlink.h nfnetlink: Revert "nfnetlink: add support for memory mapped netlink" 2016-02-18 11:42:22 -05:00
netpoll.h
nfs.h
nfs3.h
nfs4.h nfs4.h: add SCSI layout definitions 2016-03-17 14:57:16 -04:00
nfs_fs.h nfs: fix nfs_size_to_loff_t 2016-02-08 15:20:01 -05:00
nfs_fs_i.h
nfs_fs_sb.h nfs: machine credential support for additional operations 2015-12-28 09:57:15 -05:00
nfs_iostat.h
nfs_page.h mm, fs: remove remaining PAGE_CACHE_* and page_cache_{get,release} usage 2016-04-04 10:41:08 -07:00
nfs_xdr.h pnfs/blocklayout: fix a memeory leak when using,vmalloc_to_page 2016-02-17 11:44:45 -05:00
nfsacl.h
nilfs2_fs.h mm, fs: remove remaining PAGE_CACHE_* and page_cache_{get,release} usage 2016-04-04 10:41:08 -07:00
nl802154.h
nls.h
nmi.h x86/apic: Remove declaration of unused hw_nmi_is_cpu_stuck 2016-03-23 12:34:17 +01:00
node.h
nodemask.h
notifier.h rcu: Make CPU_DYING_IDLE an explicit call 2016-03-01 20:36:58 +01:00
ns_common.h
nsc_gpio.h
nsproxy.h cgroup: introduce cgroup namespaces 2016-02-16 13:04:58 -05:00
ntb.h NTB: Make _addr functions optional in the API 2016-03-21 19:30:06 -04:00
ntb_transport.h
nubus.h
numa.h
nvme.h
nvmem-consumer.h
nvmem-provider.h nvmem: Add backwards compatibility support for older EEPROM drivers. 2016-03-01 16:55:48 -08:00
nvram.h
of.h DeviceTree updates for 4.6: 2016-03-19 15:15:07 -07:00
of_address.h of: fix declaration of of_io_request_and_map 2015-12-17 10:43:06 -06:00
of_device.h
of_dma.h
of_fdt.h of: earlycon: Move address translation to of_setup_earlycon() 2016-02-06 22:07:37 -08:00
of_gpio.h gpio: of: provide optional of_mm_gpiochip_add_data() function 2016-01-05 11:20:12 +01:00
of_graph.h
of_iommu.h
of_irq.h of/irq: move of_msi_map_rid declaration to the correct ifdef section 2015-12-09 09:23:28 -06:00
of_mdio.h
of_mtd.h
of_net.h
of_pci.h PCI: host: Add of_pci_get_host_bridge_resources() stub 2016-01-15 12:30:35 -06:00
of_pdt.h
of_platform.h
of_reserved_mem.h
oid_registry.h
olpc-ec.h
omap-dma.h dmaengine: omap-dma: Add support for DMA filter mapping to slave devices 2015-12-18 11:17:26 +05:30
omap-dmaengine.h
omap-gpmc.h memory: omap-gpmc: Add support for AAD timings 2016-02-08 16:22:03 +02:00
omap-iommu.h
omap-mailbox.h
omapfb.h
once.h
oom.h include/linux/oom.h: remove undefined oom_kills_count()/note_oom_kill() 2016-03-25 16:37:42 -07:00
openvswitch.h
oprofile.h
osq_lock.h
oxu210hp.h
padata.h
page-flags-layout.h mm: exclude ZONE_DEVICE from GFP_ZONE_TABLE 2016-03-17 15:09:34 -07:00
page-flags.h include/linux/page-flags.h: force inlining of selected page flag modifications 2016-03-17 15:09:34 -07:00
page-isolation.h
page_counter.h
page_ext.h mm, page_owner: track and print last migrate reason 2016-03-15 16:55:16 -07:00
page_idle.h
page_owner.h mm, page_owner: dump page owner info from dump_page() 2016-03-15 16:55:16 -07:00
page_ref.h mm/page_ref: add tracepoint to track down page reference manipulation 2016-03-17 15:09:34 -07:00
pageblock-flags.h
pagemap.h mm: drop PAGE_CACHE_* and page_cache_{get,release} definition 2016-04-04 10:41:08 -07:00
pagevec.h
parport.h
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-dma-compat.h PCI: Consolidate PCI DMA constants and interfaces in linux/pci-dma-compat.h 2016-03-07 11:39:16 -06:00
pci-dma.h
pci.h powerpc updates for 4.6 2016-03-19 15:38:41 -07:00
pci_hotplug.h
pci_ids.h PCI: Add PCI_CLASS_SERIAL_USB_DEVICE definition 2016-03-15 08:52:28 -05:00
pcieport_if.h
pda_power.h
pe.h
percpu-defs.h
percpu-refcount.h
percpu-rwsem.h
percpu.h
percpu_counter.h
percpu_ida.h
perf_event.h perf/core: Add ::write_backward attribute to perf event 2016-04-23 14:12:39 +02:00
perf_regs.h
personality.h
pfn.h mm: fix pfn_t vs highmem 2016-02-11 18:35:48 -08:00
pfn_t.h mm: fix pfn_t vs highmem 2016-02-11 18:35:48 -08:00
phonet.h
phy.h phy: remove documentation of removed members of phy_device structure 2016-03-13 22:11:43 -04:00
phy_fixed.h phy: fixed: Fix removal of phys. 2016-03-14 15:43:11 -04:00
pid.h
pid_namespace.h
pim.h
pipe_fs_i.h pipe: limit the per-user amount of pages allocated in pipes 2016-01-19 19:25:21 -05:00
pkeys.h mm/core, x86/mm/pkeys: Add execute-only protection keys support 2016-02-18 19:46:33 +01:00
pktcdvd.h
pl320-ipc.h
platform_device.h Power management and ACPI updates for v4.5-rc1 2016-01-12 20:25:09 -08:00
plist.h
pm-trace.h
pm.h PM / sleep: Go direct_complete if driver has no callbacks 2016-01-08 01:12:06 +01:00
pm2301_charger.h
pm_clock.h PM / clk: Add support for obtaining clocks from device-tree 2016-03-17 02:32:04 +01:00
pm_domain.h PM / Domains: remove old power on/off latencies 2016-02-15 23:18:15 +01:00
pm_opp.h PM / OPP: Add dev_pm_opp_set_rate() 2016-02-10 01:11:54 +01:00
pm_qos.h
pm_runtime.h PM / runtime: Add new helper for conditional usage count incrementation 2015-12-21 03:11:12 +01:00
pm_wakeirq.h
pm_wakeup.h
pmem.h pmem: fix BUG() error in pmem.h:48 on X86_32 2016-04-14 09:01:47 -06:00
pmu.h
pnfs_osd_xdr.h
pnp.h
poison.h mm/page_poisoning.c: allow for zero poisoning 2016-03-15 16:55:16 -07:00
poll.h timer: convert timer_slack_ns from unsigned long to u64 2016-03-17 15:09:34 -07:00
posix-clock.h
posix-timers.h posix-cpu-timers: Migrate to use new tick dependency mask model 2016-03-02 16:44:27 +01:00
posix_acl.h
posix_acl_xattr.h posix acls: Remove duplicate xattr name definitions 2015-12-06 21:25:17 -05:00
power_supply.h power_supply: Add types for USB Type C and PD chargers 2016-02-15 07:02:32 +01:00
powercap.h powercap: constify powercap_zone_ops and powercap_zone_constraint_ops structures 2016-01-02 00:29:35 +01:00
ppp-comp.h
ppp_channel.h
ppp_defs.h
pps-gpio.h
pps_kernel.h time: Remove duplicated code in ktime_get_raw_and_real() 2016-03-02 17:13:02 -08:00
pr.h
preempt.h
prefetch.h
printk.h printk: help pr_debug and pr_devel to optimize out arguments 2016-01-16 11:17:29 -08:00
proc_fs.h
proc_ns.h cgroup: introduce cgroup namespaces 2016-02-16 13:04:58 -05:00
profile.h
projid.h
property.h device property: add spaces to PROPERTY_ENTRY_STRING macro 2016-01-01 02:09:51 +01:00
proportions.h
psci.h ARM: 8511/1: ARM64: kernel: PSCI: move PSCI idle management code to drivers/firmware 2016-02-11 15:33:38 +00:00
pstore.h
pstore_ram.h pstore: Add support for 64 Bit address space 2016-03-10 09:43:36 -08:00
pti.h
ptp_classify.h
ptp_clock_kernel.h ptp: Add PTP_SYS_OFFSET_PRECISE for driver crosstimestamping 2016-03-03 14:23:43 -08:00
ptrace.h ptrace: use fsuid, fsgid, effective creds for fs access checks 2016-01-20 17:09:18 -08:00
pvclock_gtod.h
pwm.h
pwm_backlight.h
pxa2xx_ssp.h spi: pxa2xx: Add support for both chip selects on Intel Braswell 2016-02-09 19:01:11 +00:00
pxa168_eth.h
qcom_scm.h
qnx6_fs.h
quicklist.h fix Christoph's email addresses 2016-03-17 15:09:34 -07:00
quota.h quota: Add support for ->get_nextdqblk() for VFS quota 2016-02-09 13:05:23 +01:00
quotaops.h quota: Add support for ->get_nextdqblk() for VFS quota 2016-02-09 13:05:23 +01:00
radix-tree.h radix-tree,shmem: introduce radix_tree_iter_next() 2016-03-17 15:09:34 -07:00
raid_class.h
ramfs.h
random.h drivers: char: random: add get_random_long() 2016-02-27 10:28:52 -08:00
range.h
ras.h
ratelimit.h
rational.h
rbtree.h rbtree: use READ_ONCE in RB_EMPTY_ROOT 2016-01-20 17:09:18 -08:00
rbtree_augmented.h
rbtree_latch.h
rcu_sync.h
rculist.h rcu: Add list_next_or_null_rcu 2016-03-09 16:36:13 -05:00
rculist_bl.h
rculist_nulls.h
rcupdate.h Merge branch 'smp-hotplug-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip 2016-03-15 13:50:29 -07:00
rcutiny.h rcu: Don't redundantly disable irqs in rcu_irq_{enter,exit}() 2015-12-07 17:01:31 -08:00
rcutree.h rcu: Don't redundantly disable irqs in rcu_irq_{enter,exit}() 2015-12-07 17:01:31 -08:00
reboot.h
reciprocal_div.h
regmap.h Merge remote-tracking branch 'regmap/topic/update-bits' into regmap-next 2016-03-05 21:30:41 +09:00
regset.h
relay.h
remoteproc.h
reservation.h
reset-controller.h reset: Make reset_control_ops const 2016-01-25 10:58:44 +01:00
reset.h
resource.h
resource_ext.h
rfkill-regulator.h
rfkill.h net: rfkill: add rfkill_find_type function 2016-02-24 09:12:45 +01:00
rhashtable.h Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2015-12-17 22:08:28 -05:00
ring_buffer.h
rio.h rapidio: add outbound window support 2016-03-22 15:36:02 -07:00
rio_drv.h rapidio: add outbound window support 2016-03-22 15:36:02 -07:00
rio_ids.h
rio_mport_cdev.h rapidio: add mport char device driver 2016-03-22 15:36:02 -07:00
rio_regs.h rapidio: add query_mport operation 2016-03-22 15:36:02 -07:00
rmap.h mm: make remove_migration_ptes() beyond mm/migration.c 2016-03-17 15:09:34 -07:00
rmi.h Input: synaptics-rmi4 - add SPI transport driver 2016-03-10 16:04:24 -08:00
rndis.h
root_dev.h
rpmsg.h
rslib.h
rtc-ds2404.h
rtc-v3020.h
rtc.h rtc: Add functions to set and read rtc offset 2016-03-14 17:08:15 +01:00
rtmutex.h
rtnetlink.h net, sched: add clsact qdisc 2016-01-10 22:13:15 -05: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
scc.h
sched.h timers/nohz: Convert tick dependency mask to atomic_t 2016-03-29 11:52:11 +02:00
sched_clock.h time: Define dummy functions for the generic sched clock 2015-12-15 09:41:09 +01:00
scif.h
scpi_protocol.h hwmon: (scpi) add energy meter support 2016-02-16 09:26:27 +00:00
screen_info.h
sctp.h
scx200.h
scx200_gpio.h
sdb.h
sdla.h
seccomp.h
securebits.h
security.h module: replace copy_module_from_fd with kernel version 2016-02-21 09:06:12 -05:00
selection.h
selinux.h
sem.h
semaphore.h
seq_buf.h
seq_file.h Make file credentials available to the seqfile interfaces 2016-04-14 12:56:09 -07:00
seq_file_net.h
seqlock.h
seqno-fence.h
serial.h
serial_8250.h tty: Add software emulated RS485 support for 8250 2016-02-06 22:23:26 -08:00
serial_bcm63xx.h
serial_core.h of: earlycon: Move address translation to of_setup_earlycon() 2016-02-06 22:07:37 -08:00
serial_max3100.h
serial_pnx8xxx.h
serial_s3c.h
serial_sci.h serial: sh-sci: Add BRG register definitions 2015-12-17 11:18:44 +01:00
serio.h
sfi.h
sfi_acpi.h
sh_clk.h
sh_dma.h
sh_eth.h sh_eth: remove EDMAC_BIG_ENDIAN 2016-01-04 16:11:11 -05:00
sh_intc.h
sh_timer.h
shdma-base.h
shm.h ipc/shm.c: is_file_shm_hugepages() can be boolean 2016-01-20 17:09:18 -08:00
shmem_fs.h make sure that freeing shmem fast symlinks is RCU-delayed 2016-01-22 18:08:52 -05:00
shrinker.h
signal.h
signalfd.h
sirfsoc_dma.h
sizes.h
skbuff.h Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2016-03-08 12:34:12 -05:00
slab.h mm, kasan: add GFP flags to KASAN API 2016-03-25 16:37:42 -07:00
slab_def.h mm, kasan: SLAB support 2016-03-25 16:37:42 -07:00
slub_def.h mm, kasan: SLAB support 2016-03-25 16:37:42 -07:00
sm501-regs.h
sm501.h
smc91x.h
smc911x.h
smp.h
smpboot.h
smsc911x.h
smscphy.h
sock_diag.h net: diag: Add the ability to destroy a socket. 2015-12-15 23:26:51 -05:00
socket.h kcm: Kernel Connection Multiplexor module 2016-03-09 16:36:14 -05: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
srcu.h rcu: Document unique-name limitation for DEFINE_STATIC_SRCU() 2016-02-23 19:59:55 -08:00
ssbi.h
stackdepot.h mm, kasan: stackdepot implementation. Enable stackdepot for SLAB 2016-03-25 16:37:42 -07:00
stackprotector.h
stacktrace.h
start_kernel.h
stat.h
statfs.h
static_key.h
stddef.h
ste_modem_shm.h
stm.h stm class: Plug stm device's unlink callback 2016-02-20 14:09:14 -08:00
stmmac.h stmmac: fix MDIO settings 2016-04-01 14:38:59 -04:00
stmp3xxx_rtc_wdt.h
stmp_device.h
stop_machine.h Merge branch 'sched/urgent' into sched/core, to pick up fixes before merging new patches 2016-01-06 11:02:29 +01:00
string.h lib: move strtobool() to kstrtobool() 2016-03-17 15:09:34 -07:00
string_helpers.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 wait.[ch]: Introduce the simple waitqueue (swait) implementation 2016-02-25 11:27:16 +01:00
swap.h mm, fs: remove remaining PAGE_CACHE_* and page_cache_{get,release} usage 2016-04-04 10:41:08 -07:00
swap_cgroup.h
swapfile.h
swapops.h
swiotlb.h swiotlb: Make linux/swiotlb.h standalone includible 2016-01-20 17:29:52 -05:00
sxgbe_platform.h
synclink.h
sys.h
sys_soc.h
syscalls.h vfs: vfs: Define new syscalls preadv2,pwritev2 2016-03-04 12:20:10 -05: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 tcp: Add RFC4898 tcpEStatsPerfDataSegsOut/In 2016-03-14 14:55:26 -04:00
textsearch.h
textsearch_fsm.h
tfrc.h
thermal.h Thermal: Ignore invalid trip points 2016-03-18 14:10:57 +08:00
thinkpad_acpi.h
thread_info.h kmemcg: account certain kmem allocations to memcg 2016-01-14 16:00:49 -08:00
threads.h
ti_wilink_st.h
tick.h param: convert some "on"/"off" users to strtobool 2016-03-17 15:09:34 -07:00
tifm.h
timb_dma.h
timb_gpio.h
time.h time: Verify time values in adjtimex ADJ_SETOFFSET to avoid overflow 2015-12-10 22:41:06 -08:00
time64.h
timecounter.h
timekeeper_internal.h time: Add history to cross timestamp interface supporting slower devices 2016-03-02 17:13:17 -08:00
timekeeping.h time: Add history to cross timestamp interface supporting slower devices 2016-03-02 17:13:17 -08:00
timer.h
timerfd.h
timeriomem-rng.h
timerqueue.h
timex.h
topology.h numa: remove stale node_has_online_mem() define 2016-01-18 14:49:33 -05:00
torture.h
toshiba.h
tpm.h
tpm_command.h
trace_clock.h
trace_events.h Nothing major this round. Mostly small clean ups and fixes. 2016-03-24 10:52:25 -07:00
trace_seq.h
tracefs.h
tracehook.h
tracepoint-defs.h tracepoints: move trace_print_flags definitions to tracepoint-defs.h 2016-03-15 16:55:16 -07:00
tracepoint.h tracing: Fix check for cpu online when event is disabled 2016-03-09 11:58:41 -05:00
transport_class.h
tsacct_kern.h
tty.h tty: Unify receive_buf() code paths 2016-01-28 14:13:44 -08:00
tty_driver.h
tty_flip.h
tty_ldisc.h tty, n_tty: Remove fasync() ldisc notification 2016-01-28 11:58:02 -08:00
typecheck.h
types.h
u64_stats_sync.h
uaccess.h Add 'unsafe' user access functions for batched accesses 2015-12-17 09:57:27 -08:00
ucb1400.h
ucs2_string.h lib/ucs2_string: Add ucs2 -> utf8 helper functions 2016-02-10 13:19:03 +00:00
udp.h
uidgid.h
uinput.h Input: uinput - add new UINPUT_DEV_SETUP and UI_ABS_SETUP ioctl 2015-12-18 17:48:50 -08:00
uio.h iov_iter: constify {csum_and_,}copy_to_iter() 2015-12-06 20:42:15 -05:00
uio_driver.h
uprobes.h
usb.h usb: Add USB 3.1 Precision time measurement capability descriptor support 2016-02-14 17:03:23 -08:00
usb_usual.h USB: uas: Add a new NO_REPORT_LUNS quirk 2016-04-13 12:02:28 -07:00
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
verify_pefile.h
vermagic.h
vexpress.h
vfio.h vfio: Add capability chain helpers 2016-02-22 16:10:08 -07:00
vfs.h
vga_switcheroo.h vga_switcheroo: Add support for switching only the DDC 2016-02-09 11:21:07 +01:00
vgaarb.h
via-core.h
via-gpio.h
via.h
via_i2c.h
videodev2.h
virtio.h virtio: Add improved queue allocation API 2016-03-02 17:01:57 +02:00
virtio_byteorder.h
virtio_caif.h
virtio_config.h virtio: make find_vqs() checkpatch.pl-friendly 2016-01-12 20:47:06 +02:00
virtio_console.h
virtio_mmio.h
virtio_ring.h virtio: Add improved queue allocation API 2016-03-02 17:01:57 +02:00
vlynq.h
vm_event_item.h thp, vmstats: count deferred split events 2016-03-17 15:09:34 -07:00
vm_sockets.h
vmacache.h
vmalloc.h mm, vmalloc: remove VM_VPAGES 2016-01-14 16:00:49 -08:00
vme.h
vmpressure.h mm: memcontrol: hook up vmpressure to socket pressure 2016-01-14 16:00:49 -08:00
vmstat.h vmstat: make vmstat_updater deferrable again and shut down on idle 2016-01-14 16:00:49 -08:00
vmw_vmci_api.h
vmw_vmci_defs.h VMCI: Use 32bit atomics for queue headers on X86_32 2016-02-07 21:36:02 -08:00
vringh.h
vt.h
vt_buffer.h
vt_kern.h
vtime.h
w1-gpio.h
wait.h sched/wait: Fix wait_event_freezable() documentation 2016-02-24 09:09:45 +01:00
wanrouter.h
watchdog.h watchdog: Add support for minimum time between heartbeats 2016-03-16 21:11:19 +01:00
wireless.h
wkup_m3_ipc.h
wl12xx.h
wm97xx.h
workqueue.h workqueue: skip flush dependency checks for legacy workqueues 2016-01-29 13:31:10 -05:00
writeback.h writeback: flush inode cgroup wb switches instead of pinning super_block 2016-03-03 14:42:50 -07:00
ww_mutex.h
xattr.h xattr handlers: Simplify list operation 2015-12-13 19:46:12 -05:00
xz.h
yam.h
z2_battery.h
zbud.h
zconf.h
zlib.h
zorro.h
zpool.h
zsmalloc.h
zutil.h