linux_old1/include/linux
Minchan Kim 854e9ed09d mm: support madvise(MADV_FREE)
Linux doesn't have an ability to free pages lazy while other OS already
have been supported that named by madvise(MADV_FREE).

The gain is clear that kernel can discard freed pages rather than
swapping out or OOM if memory pressure happens.

Without memory pressure, freed pages would be reused by userspace
without another additional overhead(ex, page fault + allocation +
zeroing).

Jason Evans said:

: Facebook has been using MAP_UNINITIALIZED
: (https://lkml.org/lkml/2012/1/18/308) in some of its applications for
: several years, but there are operational costs to maintaining this
: out-of-tree in our kernel and in jemalloc, and we are anxious to retire it
: in favor of MADV_FREE.  When we first enabled MAP_UNINITIALIZED it
: increased throughput for much of our workload by ~5%, and although the
: benefit has decreased using newer hardware and kernels, there is still
: enough benefit that we cannot reasonably retire it without a replacement.
:
: Aside from Facebook operations, there are numerous broadly used
: applications that would benefit from MADV_FREE.  The ones that immediately
: come to mind are redis, varnish, and MariaDB.  I don't have much insight
: into Android internals and development process, but I would hope to see
: MADV_FREE support eventually end up there as well to benefit applications
: linked with the integrated jemalloc.
:
: jemalloc will use MADV_FREE once it becomes available in the Linux kernel.
: In fact, jemalloc already uses MADV_FREE or equivalent everywhere it's
: available: *BSD, OS X, Windows, and Solaris -- every platform except Linux
: (and AIX, but I'm not sure it even compiles on AIX).  The lack of
: MADV_FREE on Linux forced me down a long series of increasingly
: sophisticated heuristics for madvise() volume reduction, and even so this
: remains a common performance issue for people using jemalloc on Linux.
: Please integrate MADV_FREE; many people will benefit substantially.

How it works:

When madvise syscall is called, VM clears dirty bit of ptes of the
range.  If memory pressure happens, VM checks dirty bit of page table
and if it found still "clean", it means it's a "lazyfree pages" so VM
could discard the page instead of swapping out.  Once there was store
operation for the page before VM peek a page to reclaim, dirty bit is
set so VM can swap out the page instead of discarding.

One thing we should notice is that basically, MADV_FREE relies on dirty
bit in page table entry to decide whether VM allows to discard the page
or not.  IOW, if page table entry includes marked dirty bit, VM
shouldn't discard the page.

However, as a example, if swap-in by read fault happens, page table
entry doesn't have dirty bit so MADV_FREE could discard the page
wrongly.

For avoiding the problem, MADV_FREE did more checks with PageDirty and
PageSwapCache.  It worked out because swapped-in page lives on swap
cache and since it is evicted from the swap cache, the page has PG_dirty
flag.  So both page flags check effectively prevent wrong discarding by
MADV_FREE.

However, a problem in above logic is that swapped-in page has PG_dirty
still after they are removed from swap cache so VM cannot consider the
page as freeable any more even if madvise_free is called in future.

Look at below example for detail.

    ptr = malloc();
    memset(ptr);
    ..
    ..
    .. heavy memory pressure so all of pages are swapped out
    ..
    ..
    var = *ptr; -> a page swapped-in and could be removed from
                   swapcache. Then, page table doesn't mark
                   dirty bit and page descriptor includes PG_dirty
    ..
    ..
    madvise_free(ptr); -> It doesn't clear PG_dirty of the page.
    ..
    ..
    ..
    .. heavy memory pressure again.
    .. In this time, VM cannot discard the page because the page
    .. has *PG_dirty*

To solve the problem, this patch clears PG_dirty if only the page is
owned exclusively by current process when madvise is called because
PG_dirty represents ptes's dirtiness in several processes so we could
clear it only if we own it exclusively.

Firstly, heavy users would be general allocators(ex, jemalloc, tcmalloc
and hope glibc supports it) and jemalloc/tcmalloc already have supported
the feature for other OS(ex, FreeBSD)

  barrios@blaptop:~/benchmark/ebizzy$ lscpu
  Architecture:          x86_64
  CPU op-mode(s):        32-bit, 64-bit
  Byte Order:            Little Endian
  CPU(s):                12
  On-line CPU(s) list:   0-11
  Thread(s) per core:    1
  Core(s) per socket:    1
  Socket(s):             12
  NUMA node(s):          1
  Vendor ID:             GenuineIntel
  CPU family:            6
  Model:                 2
  Stepping:              3
  CPU MHz:               3200.185
  BogoMIPS:              6400.53
  Virtualization:        VT-x
  Hypervisor vendor:     KVM
  Virtualization type:   full
  L1d cache:             32K
  L1i cache:             32K
  L2 cache:              4096K
  NUMA node0 CPU(s):     0-11
  ebizzy benchmark(./ebizzy -S 10 -n 512)

  Higher avg is better.

   vanilla-jemalloc             MADV_free-jemalloc

  1 thread
  records: 10                   records: 10
  avg:   2961.90                avg:  12069.70
  std:     71.96(2.43%)         std:    186.68(1.55%)
  max:   3070.00                max:  12385.00
  min:   2796.00                min:  11746.00

  2 thread
  records: 10                   records: 10
  avg:   5020.00                avg:  17827.00
  std:    264.87(5.28%)         std:    358.52(2.01%)
  max:   5244.00                max:  18760.00
  min:   4251.00                min:  17382.00

  4 thread
  records: 10                   records: 10
  avg:   8988.80                avg:  27930.80
  std:   1175.33(13.08%)        std:   3317.33(11.88%)
  max:   9508.00                max:  30879.00
  min:   5477.00                min:  21024.00

  8 thread
  records: 10                   records: 10
  avg:  13036.50                avg:  33739.40
  std:    170.67(1.31%)         std:   5146.22(15.25%)
  max:  13371.00                max:  40572.00
  min:  12785.00                min:  24088.00

  16 thread
  records: 10                   records: 10
  avg:  11092.40                avg:  31424.20
  std:    710.60(6.41%)         std:   3763.89(11.98%)
  max:  12446.00                max:  36635.00
  min:   9949.00                min:  25669.00

  32 thread
  records: 10                   records: 10
  avg:  11067.00                avg:  34495.80
  std:    971.06(8.77%)         std:   2721.36(7.89%)
  max:  12010.00                max:  38598.00
  min:   9002.00                min:  30636.00

In summary, MADV_FREE is about much faster than MADV_DONTNEED.

This patch (of 12):

Add core MADV_FREE implementation.

[akpm@linux-foundation.org: small cleanups]
Signed-off-by: Minchan Kim <minchan@kernel.org>
Acked-by: Michal Hocko <mhocko@suse.com>
Acked-by: Hugh Dickins <hughd@google.com>
Cc: Mika Penttil <mika.penttila@nextfour.com>
Cc: Michael Kerrisk <mtk.manpages@gmail.com>
Cc: Johannes Weiner <hannes@cmpxchg.org>
Cc: Rik van Riel <riel@redhat.com>
Cc: Mel Gorman <mgorman@suse.de>
Cc: KOSAKI Motohiro <kosaki.motohiro@jp.fujitsu.com>
Cc: Jason Evans <je@fb.com>
Cc: Daniel Micay <danielmicay@gmail.com>
Cc: "Kirill A. Shutemov" <kirill@shutemov.name>
Cc: Shaohua Li <shli@kernel.org>
Cc: <yalin.wang2010@gmail.com>
Cc: Andy Lutomirski <luto@amacapital.net>
Cc: "James E.J. Bottomley" <jejb@parisc-linux.org>
Cc: "Kirill A. Shutemov" <kirill@shutemov.name>
Cc: "Shaohua Li" <shli@kernel.org>
Cc: Andrea Arcangeli <aarcange@redhat.com>
Cc: Arnd Bergmann <arnd@arndb.de>
Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Cc: Catalin Marinas <catalin.marinas@arm.com>
Cc: Chen Gang <gang.chen.5i5j@gmail.com>
Cc: Chris Zankel <chris@zankel.net>
Cc: Darrick J. Wong <darrick.wong@oracle.com>
Cc: David S. Miller <davem@davemloft.net>
Cc: Helge Deller <deller@gmx.de>
Cc: Ivan Kokshaysky <ink@jurassic.park.msu.ru>
Cc: Matt Turner <mattst88@gmail.com>
Cc: Max Filippov <jcmvbkbc@gmail.com>
Cc: Ralf Baechle <ralf@linux-mips.org>
Cc: Richard Henderson <rth@twiddle.net>
Cc: Roland Dreier <roland@kernel.org>
Cc: Russell King <rmk@arm.linux.org.uk>
Cc: Shaohua Li <shli@kernel.org>
Cc: Will Deacon <will.deacon@arm.com>
Cc: Wu Fengguang <fengguang.wu@intel.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2016-01-15 17:56:32 -08:00
..
amba tty: amba-pl011: add support for ZTE UART (EXPERIMENTAL) 2015-12-13 19:59:48 -08:00
bcma mtd: bcm47xxnflash: really unregister NAND on device removal 2015-12-14 10:11:09 -08:00
byteorder
can net/can: can_dropped_invalid_skb can be boolean 2015-10-09 07:49:01 -07:00
ceph libceph: add nocephx_sign_messages option 2015-11-02 23:37:46 +01:00
clk clk: at91: add generated clock driver 2015-10-01 12:48:11 -07:00
crush
decompress
dma dmaengine: hsu: remove platform data 2015-10-17 21:22:08 -07:00
extcon extcon: gpio: Fix minor coding style and remove the unused fields. 2015-09-30 19:22:50 +09:00
fpga add FPGA manager core 2015-10-07 18:08:15 +01:00
fsl EDAC, mpc85xx: Make mpc85xx-pci-edac a platform device 2015-12-11 16:56:16 +01:00
gpio gpiolib: provide generic request/free implementations 2015-10-16 22:11:16 +02:00
hsi HSI: Remove struct hsi_client private fields from kernel-doc 2015-11-21 18:42:00 +01:00
i2c i2c: rcar: Remove obsolete platform data support 2015-10-20 18:10:25 +02:00
iio iio: Make IIO value formating function globally available. 2015-12-22 17:04:56 +00:00
input Input: edt-ft5x06 - remove support for platform data 2015-09-27 17:33:59 -07:00
irqchip Merge branch 'irq/gic-v2m-acpi' of git://git.kernel.org/pub/scm/linux/kernel/git/maz/arm-platforms into irq/core 2015-12-29 10:08:45 +01:00
isdn
lockd lockd: constify nlmsvc_binding structure 2016-01-07 10:10:50 -05:00
mfd regulator: Update for v4.5 2016-01-15 12:14:47 -08:00
mlx4 Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2015-12-17 22:08:28 -05:00
mlx5 IB/mlx5: Add flow steering support 2016-01-11 17:48:53 -05:00
mmc mmc: dw_mmc: remove the unused quirks 2016-01-05 18:04:58 +01:00
mtd mtd: nand: add helpers to access ->priv 2016-01-07 09:55:39 -08:00
netfilter netfilter: nfnetlink: pass down netns pointer to commit() and abort() callbacks 2015-12-28 18:43:15 +01:00
netfilter_arp inet netfilter: Remove hook from ip6t_do_table, arp_do_table, ipt_do_table 2015-09-18 21:57:43 +02:00
netfilter_bridge netfilter: ebtables: Simplify the arguments to ebt_do_table 2015-09-18 21:57:35 +02:00
netfilter_ipv4 inet netfilter: Remove hook from ip6t_do_table, arp_do_table, ipt_do_table 2015-09-18 21:57:43 +02:00
netfilter_ipv6 inet netfilter: Remove hook from ip6t_do_table, arp_do_table, ipt_do_table 2015-09-18 21:57:43 +02:00
perf drivers/perf: kill armpmu_register 2015-11-16 15:41:49 +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 drivers/pinctrl: Add the concept of an "init" state 2015-10-27 11:24:23 +01:00
platform_data spi: Updates for v4.5 2016-01-13 11:38:27 -08:00
power power: bq27xxx_battery: Reorganize I2C into a module 2015-12-05 02:06:51 +01:00
qed Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2015-12-17 22:08:28 -05:00
raid
regulator Merge remote-tracking branches 'regulator/topic/pv88090', 'regulator/topic/qcom-smd', 'regulator/topic/tps6105x', 'regulator/topic/tps65086' and 'regulator/topic/tps65218' into regulator-next 2016-01-12 18:26:10 +00:00
reset
rtc
sched sched/deadline: Unify dl_time_before() usage 2015-09-23 09:51:25 +02:00
soc netcp: try to reduce type confusion in descriptors 2015-12-11 19:34:39 -05:00
spi Merge remote-tracking branches 'spi/topic/overlay', 'spi/topic/pxa2xx', 'spi/topic/s3c64xx', 'spi/topic/sh-msiof' and 'spi/topic/spidev' into spi-next 2016-01-11 16:48:35 +00:00
ssb ssb: pick SoC invariants code from MIPS BCM47xx arch 2015-12-16 16:36:25 +02:00
sunrpc sunrpc: Add a function to close temporary transports immediately 2015-12-23 10:08:15 -05:00
ulpi
unaligned
usb USB patches for 4.5-rc1 2016-01-13 09:26:40 -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: Clear error status registers during enumeration and restore 2015-09-17 10:09:37 -05: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_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
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
atmel_tc.h misc: atmel_tclib: get and use slow clock 2015-10-06 12:33:14 +02:00
atomic.h atomic: remove all traces of READ_ONCE_CTRL() and atomic*_read_ctrl() 2015-11-03 17:22:17 -08:00
attribute_container.h
audit.h audit: audit_string_contains_control can be boolean 2015-11-04 08:23:51 -05:00
auto_dev-ioctl.h
auto_fs.h
auxvec.h
average.h
b1pcmcia.h
backing-dev-defs.h writeback: bdi_writeback iteration must not skip dying ones 2015-10-12 10:31:12 -06:00
backing-dev.h Merge branch 'for-4.4' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/cgroup 2015-11-05 14:51:32 -08:00
backlight.h
badblocks.h block, badblocks: introduce devm_init_badblocks 2016-01-09 08:39:04 -08:00
balloon_compaction.h
basic_mmio_gpio.h
bcd.h
bch.h
bcm47xx_nvram.h
bcm47xx_wdt.h
bfin_mac.h
binfmts.h
bio.h
bit_spinlock.h
bitmap.h
bitops.h bitops.h: correctly handle rol32 with 0 byte shift 2015-12-09 10:35:16 -08:00
bitrev.h
blk-cgroup.h blkcg: fix incorrect read/write sync/async stat accounting 2015-10-27 15:04:56 +09:00
blk-iopoll.h
blk-mq.h block: add block polling support 2015-11-07 10:40:47 -07:00
blk_types.h block: don't hardcode blk_qc_t -> tag mask 2015-11-11 09:37:34 -07:00
blkdev.h block: add blk_start_queue_async() 2015-12-28 13:07:07 -07:00
blkpg.h mtd: provide proper 32/64-bit compat_ioctl() support for BLKPG 2015-09-29 13:37:04 -07:00
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: fix clearing on persistent program array maps 2015-11-25 12:14:09 -05:00
brcmphy.h net: phy: bcm7xxx: Add entry for Broadcom BCM7435 2015-11-25 11:35:14 -05:00
bsearch.h
bsg-lib.h
bsg.h
btree-128.h
btree-type.h
btree.h
btrfs.h
buffer_head.h vfs: remove unused wrapper block_page_mkwrite() 2015-11-11 02:19:33 -05:00
bug.h
c2port.h
cache.h
cacheinfo.h
capability.h
cb710.h
cciss_ioctl.h
ccp.h
cdev.h
cdrom.h
cfag12864b.h
cgroup-defs.h Merge branch 'for-4.5' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/cgroup 2016-01-12 19:20:32 -08:00
cgroup.h Merge branch 'for-4.5' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/cgroup 2016-01-12 19:20:32 -08:00
cgroup_subsys.h cgroup: kill cgrp_ss_priv[CGROUP_CANFORK_COUNT] and friends 2015-12-03 10:24:08 -05:00
circ_buf.h
cleancache.h
clk-provider.h clk: Add clk_hw_is_enabled() for use by clk providers 2015-10-26 12:36:55 -07:00
clk.h
clkdev.h
clksrc-dbx500-prcmu.h
clock_cooling.h
clockchips.h clockevents: Remove unused set_mode() callback 2015-09-14 11:00:55 +02:00
clocksource.h timekeeping: Lift clocksource cacheline restriction 2015-11-25 22:28:30 +01:00
cm4000_cs.h
cma.h mm: cma: fix incorrect type conversion for size during dma allocation 2015-10-23 17:55:10 +09:00
cmdline-parser.h
cn_proc.h
cnt32_to_63.h
coda.h
coda_psdev.h
compaction.h mm, compaction: distinguish contended status in tracepoints 2015-11-05 19:34:48 -08:00
compat.h
compiler-clang.h
compiler-gcc.h include/linux/compiler-gcc.h: improve __visible documentation 2015-11-06 17:50:42 -08:00
compiler-intel.h
compiler.h locking, sched: Introduce smp_cond_acquire() and use it 2015-12-04 10:33:41 +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: implement binary attributes 2016-01-04 12:31:46 +01:00
connector.h
console.h
console_struct.h
consolemap.h
container.h
context_tracking.h sched/cputime: Rename vtime_accounting_enabled() to vtime_accounting_cpu_enabled() 2015-12-04 10:34:45 +01:00
context_tracking_state.h context_tracking: Switch to new static_branch API 2015-11-24 09:56:43 +01:00
cordic.h
coredump.h
coresight.h coresight: fixing typographical error 2015-10-07 17:54:09 +01:00
count_zeros.h move count_zeroes.h out of asm-generic 2015-10-15 00:21:07 +02:00
cper.h
cpu.h cpu: Remove try_get_online_cpus() 2015-10-07 16:02:49 -07:00
cpu_cooling.h
cpu_pm.h
cpu_rmap.h
cpufeature.h
cpufreq-dt.h
cpufreq.h cpufreq: Simplify core code related to boost support 2016-01-01 03:49:51 +01:00
cpuidle.h
cpumask.h
cpuset.h mm, page_alloc: remove unnecessary taking of a seqlock when cpusets are disabled 2015-11-06 17:50:42 -08: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 capabilities: ambient capabilities 2015-09-04 16:54:41 -07:00
crypto.h
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 dmaengine: ioatdma: constify dca_ops structures 2015-11-16 09:27:32 +05:30
dcache.h include/linux/dcache.h: remove semicolons from HASH_LEN_DECLARE 2016-01-14 16:00:49 -08:00
dccp.h net/dccp: dccp_list_has_service can be boolean 2015-10-09 07:49:02 -07:00
dcookies.h
debug_locks.h
debugfs.h debugfs: Add debugfs_create_ulong() 2015-10-18 10:14:39 -07: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: comments for get_dev_status usage updated 2015-09-11 14:23:29 +09:00
devfreq_cooling.h thermal: devfreq_cooling: use a thermal_cooling_device for register and unregister 2015-11-02 13:14:44 -08:00
device-mapper.h dm: refactor ioctl handling 2015-10-31 19:05:59 -04:00
device.h device core: add BUS_NOTIFY_DRIVER_NOT_BOUND notification 2015-12-09 01:25:01 +01: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-contiguous.h mm: cma: fix incorrect type conversion for size during dma allocation 2015-10-23 17:55:10 +09:00
dma-debug.h
dma-direction.h
dma-iommu.h iommu: Implement common IOMMU ops for DMA mapping 2015-10-15 16:41:04 +02:00
dma-mapping.h dma-mapping: tidy up dma_parms default handling 2015-11-06 17:50:42 -08:00
dma_remapping.h iommu/vt-d: Implement deferred invalidate for SVM 2015-10-15 13:22:35 +01:00
dmaengine.h Merge branch 'topic/async' into for-linus 2016-01-06 15:17:47 +05:30
dmapool.h mm: add dma_pool_zalloc() call to DMA API 2015-09-08 15:35:28 -07:00
dmar.h
dmi.h
dnotify.h
dns_resolver.h net: dns_resolver: convert time_t to time64_t 2015-11-18 16:27:46 -05:00
dqblk_qtree.h quota: constify qtree_fmt_operations structures 2016-01-04 10:58:35 +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
efi-bgrt.h
efi.h efi: Use correct type for struct efi_memory_map::phys_map 2015-10-28 12:28:06 +01: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
errno.h
errqueue.h
etherdevice.h net: Add eth_platform_get_mac_address() helper. 2016-01-06 16:31:56 -05:00
ethtool.h
eventfd.h
eventpoll.h
evm.h
export.h
exportfs.h
ext2_fs.h
extcon.h extcon: Modify the id and name of external connector 2015-10-16 08:30:09 +09:00
f2fs_fs.h f2fs: add symbol to avoid any confusion with tools 2015-12-14 18:58:42 -08:00
f75375s.h
falloc.h
fanotify.h
fault-inject.h debugfs: Pass bool pointer to debugfs_create_bool() 2015-10-04 11:36:07 +01:00
fb.h Merge branch 'drm-next' of git://people.freedesktop.org/~airlied/linux 2015-11-10 09:33:06 -08:00
fcdevice.h
fcntl.h
fd.h
fddidevice.h
fdtable.h vfs: Fix pathological performance case for __alloc_fd() 2015-10-31 16:12:10 -07:00
fec.h
fence.h dma-buf/fence: add fence_is_later() 2015-10-30 01:47:27 -04:00
file.h
filter.h bpf: cleanup bpf_prog_run_{save,clear}_cb helpers 2016-01-08 21:40:34 -05: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
fs.h libnvdimm for 4.5 2016-01-13 19:15:14 -08: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
fsl_hypervisor.h
fsl_ifc.h
fsldma.h
fsnotify.h
fsnotify_backend.h fsnotify: destroy marks with call_srcu instead of dedicated thread 2016-01-14 16:00:49 -08:00
ftrace.h Not much new with tracing for this release. Mostly just clean ups and 2016-01-12 20:04:15 -08:00
ftrace_irq.h
futex.h
fwnode.h Power management and ACPI updates for v4.4-rc1 2015-11-04 18:10:13 -08:00
gameport.h
gcd.h
genalloc.h genalloc:support allocating specific region 2015-12-22 17:10:17 -06:00
genetlink.h net/netlink: lockdep_genl_is_held can be boolean 2015-10-09 07:48:59 -07:00
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: fix noisy sparse warning in LIBCFS_ALLOC_PRE() 2016-01-14 16:00:49 -08:00
glob.h
goldfish.h
gpio-fan.h
gpio-pxa.h
gpio.h
gpio_keys.h
gpio_mouse.h
hardirq.h
hash.h
hashtable.h net: move napi_hash[] into read mostly section 2015-11-18 16:17:42 -05:00
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 kmap_atomic_to_page() has no users, remove it 2015-11-09 15:11:24 -08:00
highuid.h
hil.h
hil_mlc.h
hippidevice.h
host1x.h
hp_sdc.h
hpet.h
hrtimer.h
htcpld.h
htirq.h
huge_mm.h mm: prepare page_referenced() and page_idle to new THP refcounting 2016-01-15 17:56:32 -08:00
hugetlb.h include/linux/hugetlb.h: is_file_hugepages() can be boolean 2016-01-14 16:00:49 -08:00
hugetlb_cgroup.h mm: make compound_head() robust 2015-11-06 17:50:42 -08:00
hugetlb_inline.h
hw_breakpoint.h
hw_random.h
hwmon-sysfs.h
hwmon-vid.h
hwmon.h
hwspinlock.h
hyperv.h Drivers: hv: vmbus: fix the building warning with hyperv-keyboard 2015-12-21 13:07:56 -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: ocores: support big-endian register layout 2015-10-20 17:47:45 +02:00
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 wireless: add WNM action frame categories 2015-10-13 10:34:46 +02:00
ieee802154.h ieee802154: remove unnecessary includes 2015-09-24 20:42:37 +02:00
if_arp.h
if_bridge.h bridge: define some min/max/default ageing time constants 2015-09-23 14:35:58 -07:00
if_eql.h
if_ether.h
if_fddi.h
if_frad.h
if_link.h if_link: Add control trust VF 2015-10-23 05:44:28 -07:00
if_ltalk.h
if_macvlan.h
if_phonet.h
if_pppol2tp.h
if_pppox.h ppp: remove PPPOX_ZOMBIE socket state 2015-11-20 11:31:26 -05:00
if_team.h team: fill-up LAG changeupper info struct and pass it along 2015-12-03 11:49:26 -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 net/ipv4: Pass proto as u8 instead of u16 in ip_check_mc_rcu 2015-09-29 16:27:47 -07:00
ihex.h
ima.h
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
inet_lro.h
inetdevice.h net/inetdevice: bad_mask can be boolean 2015-10-09 07:49:05 -07:00
init.h
init_ohci1394_dma.h
init_task.h sched/cputime: Convert vtime_seqlock to seqcount 2015-12-04 10:34:46 +01:00
initrd.h
inotify.h
input-polldev.h
input.h Input: improve autorepeat initialization 2015-10-13 23:30:31 -07:00
integrity.h
intel-iommu.h iommu/vt-d: Implement SVM_FLAG_PRIVATE_PASID to allocate unique PASIDs 2015-10-15 15:35:32 +01:00
intel-svm.h iommu/vt-d: Expose struct svm_dev_ops without CONFIG_INTEL_IOMMU_SVM 2015-10-27 08:36:08 +09:00
intel_pmic_gpio.h
interrupt.h genirq: Implement irq_percpu_is_enabled() 2015-12-08 12:53:29 +01:00
interval_tree.h
interval_tree_generic.h
io-64-nonatomic-hi-lo.h move io-64-nonatomic*.h out of asm-generic 2015-10-15 00:21:07 +02:00
io-64-nonatomic-lo-hi.h move io-64-nonatomic*.h out of asm-generic 2015-10-15 00:21:07 +02:00
io-mapping.h
io.h
ioc3.h
ioc4.h
iocontext.h
iommu-common.h iommu-common: Fix error code used in iommu_tbl_range_{alloc,free}(). 2015-11-04 11:30:57 -08:00
iommu-helper.h
iommu.h iommu: Add generic_device_group() function 2015-10-22 00:00:49 +02:00
iopoll.h
ioport.h ACPI/PCI: Enhance ACPI core to support sparse IO space 2015-10-16 22:18:51 +02:00
ioprio.h
iova.h iommu: iova: Move iova cache management to the iova library 2015-10-04 12:46:06 +01:00
ip.h
ipack.h
ipc.h
ipc_namespace.h
ipmi-fru.h
ipmi.h
ipmi_smi.h
ipv6.h ipv6: add complete rcu protection around np->opt 2015-12-02 23:37:16 -05:00
ipv6_route.h
irq.h genirq: Add flag to force mask in disable_irq[_nosync]() 2015-10-11 11:33:42 +02:00
irq_cpustat.h
irq_work.h
irqbypass.h virt: IRQ bypass manager 2015-10-01 15:06:43 +02:00
irqchip.h irqchip / ACPI: Add probing infrastructure for ACPI-based irqchips 2015-10-01 02:18:38 +02:00
irqdesc.h genirq: Free irq_desc with rcu 2015-12-14 10:03:46 +01:00
irqdomain.h Merge branch 'irq/gic-v2m-acpi' of git://git.kernel.org/pub/scm/linux/kernel/git/maz/arm-platforms into irq/core 2015-12-29 10:08:45 +01:00
irqflags.h
irqhandler.h genirq: Remove irq argument from irq flow handlers 2015-09-16 15:47:51 +02:00
irqnr.h
irqreturn.h Document that IRQ_NONE should be returned when IRQ not actually handled 2015-10-30 10:13:26 +01:00
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 ext4, jbd2: ensure entering into panic after recording an error in superblock 2015-10-18 17:02:56 -04:00
jhash.h
jiffies.h
journal-head.h
joystick.h
jump_label.h treewide: Remove old email address 2015-11-23 09:44:58 +01:00
jump_label_ratelimit.h
jz4740-adc.h
jz4780-nemc.h
kallsyms.h
kasan.h
kbd_diacr.h
kbd_kern.h
kbuild.h
kconfig.h
kcore.h
kd.h
kdb.h
kdebug.h
kdev_t.h include/linux/kdev_t.h: old/new_valid_dev() can return bool 2015-11-09 15:11:24 -08:00
kern_levels.h
kernel-page-flags.h
kernel.h panic, x86: Allow CPUs to save registers even if looping in NMI context 2015-12-19 11:07:01 +01:00
kernel_stat.h
kernelcapi.h
kernfs.h kernfs: implement kernfs_walk_and_get() 2015-11-20 15:55:52 -05:00
kexec.h kexec: Fix race between panic() and crash_kexec() 2015-12-19 11:07:01 +01:00
key-type.h KEYS: Merge the type-specific data with the payload data 2015-10-21 15:18:36 +01:00
key.h KEYS: Merge the type-specific data with the payload data 2015-10-21 15:18:36 +01:00
keyboard.h
kfifo.h
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 kmod: use system_unbound_wq instead of khelper 2015-09-10 13:29:01 -07:00
kmsg_dump.h
kobj_map.h
kobject.h kobject: explain what kobject's sd field is 2015-10-04 11:46:16 +01:00
kobject_ns.h
kprobes.h
kref.h kref: Remove kref_put_spinlock_irqsave() 2015-11-28 19:33:29 -08:00
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
kvm_host.h KVM: move architecture-dependent requests to arch/ 2016-01-08 19:04:36 +01:00
kvm_irqfd.h KVM: eventfd: add irq bypass consumer management 2015-10-01 15:06:46 +02:00
kvm_para.h KVM: kvm_para_has_feature can be boolean 2015-11-25 17:24:23 +01:00
kvm_types.h
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: core: add managed version of led_trigger_register 2016-01-04 09:57:40 +01:00
leds_pwm.h
lglock.h
lguest.h
lguest_launcher.h
libata.h Merge branch 'for-4.5' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/libata 2016-01-11 19:33:59 -08:00
libfdt.h
libfdt_env.h
libnvdimm.h libnvdimm: Add a poison list and export badblocks 2016-01-09 08:39:03 -08:00
libps2.h
license.h
lightnvm.h lightnvm: replace req queue with nvmdev for lld 2015-12-07 09:14:19 -07:00
linkage.h
linux_logo.h
lis3lv02d.h
list.h list: Use WRITE_ONCE() when initializing list_head structures 2015-12-04 12:34:33 -08:00
list_bl.h list: Use READ_ONCE() when testing for empty lists 2015-11-23 10:37:35 -08:00
list_lru.h
list_nulls.h list: Use READ_ONCE() when testing for empty lists 2015-11-23 10:37:35 -08:00
list_sort.h
livepatch.h livepatch: add sympos as disambiguator field to klp_reloc 2015-12-03 23:01:27 +01:00
llc.h
llist.h
lockdep.h treewide: Remove old email address 2015-11-23 09:44:58 +01:00
lockref.h
log2.h
lp.h
lru_cache.h
lsm_audit.h
lsm_hooks.h
lz4.h
lzo.h
m48t86.h
mISDNdsp.h
mISDNhw.h
mISDNif.h
mailbox_client.h
mailbox_controller.h
maple.h
marvell_phy.h phy: marvell: Add support for 88E1540 PHY 2015-11-17 15:25:43 -05:00
math64.h KVM: x86: Replace call-back set_tsc_khz() with a common function 2015-11-10 12:06:16 +01:00
max17040_battery.h
mbcache.h
mbus.h
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 mei: bus: use mei_cldev_ prefix for the API functions 2015-09-20 19:31:10 -07:00
memblock.h include/linux/memblock.h: fix ordering of 'flags' argument in comments 2016-01-14 16:00:49 -08:00
memcontrol.h memcg: adjust to support new THP refcounting 2016-01-15 17:56:32 -08:00
memory.h
memory_hotplug.h mm: memory hotplug with an existing resource 2015-10-23 14:19:58 +01:00
mempolicy.h mm/mempolicy.c: convert the shared_policy lock to a rwlock 2016-01-14 16:00:49 -08:00
mempool.h
memstick.h
mg_disk.h
mic_bus.h misc: mic: Remove COSM functionality from the MIC card driver 2015-10-04 12:46:06 +01:00
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 Input: add userio module 2015-10-27 18:55:31 -07:00
mm-arch-hooks.h
mm.h mm: prepare page_referenced() and page_idle to new THP refcounting 2016-01-15 17:56:32 -08:00
mm_inline.h mm: move lru_to_page to mm_inline.h 2016-01-14 16:00:49 -08:00
mm_types.h thp: introduce deferred_split_huge_page() 2016-01-15 17:56:32 -08:00
mman.h
mmdebug.h page-flags: introduce page flags policies wrt compound pages 2016-01-15 17:56:32 -08:00
mmiotrace.h
mmu_context.h
mmu_notifier.h mm: introduce idle page tracking 2015-09-10 13:29:01 -07:00
mmzone.h mm: page_alloc: generalize the dirty balance reserve 2016-01-14 16:00:49 -08: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 module: clean up RO/NX handling. 2015-12-04 22:46:26 +01:00
moduleloader.h
moduleparam.h module: export param_free_charp() 2015-11-06 17:50:42 -08:00
mount.h
mpage.h
mpi.h lib/mpi: clean unused SHA1_DIGEST_LENGTH 2015-10-20 22:10:45 +08:00
mpls.h
mpls_iptunnel.h
mroute.h net: ipmr: move struct mr_table and VIF_EXISTS to mroute.h 2015-11-30 15:26:22 -05:00
mroute6.h
msdos_fs.h
msg.h
msi.h platform-msi: Allow creation of a MSI-based stacked irq domain 2015-12-16 15:29:44 +00:00
mutex-debug.h
mutex.h
mv643xx.h
mv643xx_eth.h
mv643xx_i2c.h
mvebu-pmsu.h
mxm-wmi.h
n_r3964.h tty: r3964: Replace/remove bogus tty lock use 2015-10-17 21:11:29 -07:00
namei.h nfsd: don't hold i_mutex over userspace upcalls 2016-01-09 03:07:52 -05:00
nd.h
net.h net: fix sock_wake_async() rcu protection 2015-12-01 15:45:05 -05:00
netdev_features.h net: Eliminate NETIF_F_GEN_CSUM and NETIF_F_V[46]_CSUM 2015-12-15 16:50:20 -05:00
netdevice.h net: Fix typo in netdev_intersect_features 2016-01-11 23:28:44 -05:00
netfilter.h netfilter: turn NF_HOOK into an inline function 2015-10-16 18:45:36 +02:00
netfilter_bridge.h netfilter: Pass net into okfn 2015-09-17 17:18:37 -07:00
netfilter_defs.h
netfilter_ingress.h netfilter: ingress: fix wrong input interface on hook 2015-11-06 19:33:12 +01:00
netfilter_ipv4.h ipv4: Pass struct net into ip_route_me_harder 2015-09-29 20:21:32 +02:00
netfilter_ipv6.h ipv6: Pass struct net through ip6_fragment 2015-09-30 01:45:03 -05:00
netlink.h netlink: add a start callback for starting a netlink dump 2015-12-15 23:25:20 -05:00
netpoll.h
nfs.h
nfs3.h
nfs4.h NFS client updates for Linux 4.5 2016-01-14 16:08:23 -08:00
nfs_fs.h NFS client updates for Linux 4.5 2016-01-14 16:08:23 -08: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
nfs_xdr.h Merge branch 'pnfs_generic' 2016-01-04 13:19:55 -05:00
nfsacl.h
nilfs2_fs.h
nl802154.h
nls.h
nmi.h kernel/watchdog.c: perform all-CPU backtrace in case of hard lockup 2015-11-05 19:34:48 -08:00
node.h
nodemask.h
notifier.h
ns_common.h
nsc_gpio.h
nsproxy.h
ntb.h NTB: Fix documentation for ntb_peer_db_clear. 2015-09-07 15:17:09 -04:00
ntb_transport.h NTB: Add flow control to the ntb_netdev 2015-09-07 15:17:08 -04:00
nubus.h
numa.h
nvme.h nvme: include <linux/types.ĥ> in <linux/nvme.h> 2015-10-09 10:40:37 -06:00
nvmem-consumer.h
nvmem-provider.h
nvram.h
of.h of: Provide static inline function for of_translate_address if needed 2015-11-10 17:27:12 -06: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 dmaengine: of_dma: Correct return code for of_dma_request_slave_channel in case !CONFIG_OF 2015-11-16 09:03:21 +05:30
of_fdt.h
of_gpio.h gpiolib: Add and use OF_GPIO_SINGLE_ENDED flag 2015-10-16 22:49:26 +02: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 More power management and ACPI updates for v4.4-rc1 2015-11-12 11:50:33 -08: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
omap-iommu.h
omap-mailbox.h
omapfb.h
once.h once: make helper generic for calling functions once 2015-10-08 05:26:36 -07:00
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: rework mapcount accounting to enable 4k mapping of THPs 2016-01-15 17:56:32 -08: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 mm: page_counter: let page_counter_try_charge() return bool 2015-11-05 19:34:48 -08:00
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
pageblock-flags.h mm: use 'unsigned int' for page order 2015-11-06 17:50:42 -08:00
pagemap.h thp: reintroduce split_huge_page() 2016-01-15 17:56:32 -08: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/ACPI: Add interface acpi_pci_root_create() 2015-10-16 22:18:51 +02:00
pci-aspm.h
pci-ats.h
pci-dma.h
pci.h acpi: pci: Setup MSI domain for ACPI based pci devices 2015-12-21 13:49:32 +00:00
pci_hotplug.h
pci_ids.h pci_ids: add Netronome Systems vendor 2015-12-03 14:17:51 -05:00
pcieport_if.h
pda_power.h
pe.h
percpu-defs.h
percpu-refcount.h percpu: Remove unneeded return from void function 2015-11-16 10:40:50 -05:00
percpu-rwsem.h locking/percpu-rwsem: Make use of the rcu_sync infrastructure 2015-10-06 11:25:31 -07:00
percpu.h percpu: remove PERCPU_ENOUGH_ROOM which is stale definition 2015-11-16 10:50:25 -05:00
percpu_counter.h
percpu_ida.h
perf_event.h perf/core: Robustify the perf_cgroup_from_task() RCU checks 2015-11-23 09:21:03 +01:00
perf_regs.h
personality.h
pfn.h mm: add PHYS_PFN, use it in __phys_to_pfn() 2016-01-14 16:00:49 -08:00
phonet.h
phy.h mdio: Add support for mdio drivers. 2016-01-07 14:31:27 -05:00
phy_fixed.h
pid.h
pid_namespace.h
pim.h net: ipmr: move pimsm_enabled to pim.h and rename 2015-11-30 15:26:22 -05:00
pipe_fs_i.h
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 / PCI / ACPI: Kick devices that might have been reset by firmware 2015-10-14 02:17:34 +02:00
pm2301_charger.h
pm_clock.h
pm_domain.h PM / Domains: Merge measurements for PM QoS device latencies 2015-10-28 04:33:04 +01:00
pm_opp.h PM / OPP: Parse 'opp-<prop>-<name>' bindings 2015-12-10 23:08:51 +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: kill memremap_pmem() 2015-10-09 17:00:32 -04:00
pmu.h
pnfs_osd_xdr.h
pnp.h
poison.h mm: sanitize page->mapping for tail pages 2016-01-15 17:56:32 -08:00
poll.h
posix-clock.h
posix-timers.h
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
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 ntp/pps: use y2038 safe types in pps_event_time 2015-10-01 09:59:16 -07:00
pr.h block: add an API for Persistent Reservations 2015-10-21 14:46:56 -06:00
preempt.h sched/core: Kill PREEMPT_ACTIVE 2015-10-06 17:08:19 +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 device property: add spaces to PROPERTY_ENTRY_STRING macro 2016-01-01 02:09:51 +01:00
proportions.h treewide: Remove old email address 2015-11-23 09:44:58 +01:00
psci.h drivers: firmware: psci: move power_state handling to generic code 2015-10-02 14:35:16 +01:00
pstore.h pstore: add pstore unregister 2015-10-22 08:59:18 -07:00
pstore_ram.h
pti.h
ptp_classify.h ptp: Change ptp_class to a proper bitmask 2015-11-03 11:08:22 -05:00
ptp_clock_kernel.h
ptrace.h
pvclock_gtod.h
pwm.h pwm: Set enable state properly on failed call to enable 2015-11-10 13:06:16 +01:00
pwm_backlight.h
pxa2xx_ssp.h spi: pxa2xx: Add support for Intel Broxton 2015-10-30 11:18:05 +09:00
pxa168_eth.h
qcom_scm.h qcom-scm: add missing prototype for qcom_scm_is_available() 2015-10-14 14:51:22 -05:00
qnx6_fs.h
quicklist.h
quota.h
quotaops.h
radix-tree.h
raid_class.h
ramfs.h
random.h random32: add prandom_init_once helper for own rngs 2015-10-08 05:26:38 -07:00
range.h
ras.h
ratelimit.h
rational.h
rbtree.h rbtree: clarify documentation of rbtree_postorder_for_each_entry_safe() 2015-11-06 17:50:42 -08:00
rbtree_augmented.h
rbtree_latch.h
rcu_sync.h rcu_sync: Cleanup the CONFIG_PROVE_RCU checks 2015-10-06 11:25:45 -07:00
rculist.h Merge branches 'doc.2015.12.05a', 'exp.2015.12.07a', 'fixes.2015.12.07a', 'list.2015.12.04b' and 'torture.2015.12.05a' into HEAD 2015-12-07 17:02:54 -08:00
rculist_bl.h
rculist_nulls.h
rcupdate.h Merge branches 'doc.2015.12.05a', 'exp.2015.12.07a', 'fixes.2015.12.07a', 'list.2015.12.04b' and 'torture.2015.12.05a' into HEAD 2015-12-07 17:02:54 -08: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 branches 'regmap/topic/64bit' and 'regmap/topic/irq-type' into regmap-next 2016-01-05 19:07:17 +00:00
regset.h
relay.h
remoteproc.h
reservation.h
reset-controller.h
reset.h
resource.h
resource_ext.h
rfkill-gpio.h
rfkill-regulator.h
rfkill.h
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 ring_buffer: ring_buffer_empty{cpu}() can return boolean 2015-11-02 14:23:38 -05:00
rio.h
rio_drv.h
rio_ids.h
rio_regs.h
rmap.h mm: support madvise(MADV_FREE) 2016-01-15 17:56:32 -08:00
rndis.h
root_dev.h
rotary_encoder.h Input: rotary-encoder - add support for quarter-period mode 2015-10-16 15:32:18 -07:00
rpmsg.h
rslib.h
rtc-ds2404.h
rtc-v3020.h
rtc.h
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 Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next 2016-01-12 18:57:02 -08:00
sched_clock.h time: Define dummy functions for the generic sched clock 2015-12-15 09:41:09 +01:00
scif.h misc: mic: SCIF RMA header file and IOCTL changes 2015-10-04 12:54:54 +01:00
scpi_protocol.h scpi: hide get_scpi_ops in module from built-in code 2015-11-19 16:22:43 +01:00
screen_info.h
sctp.h
scx200.h
scx200_gpio.h
sdb.h
sdla.h
seccomp.h seccomp, ptrace: add support for dumping seccomp filters 2015-10-27 19:55:13 -07:00
securebits.h
security.h security: fix typo in security_task_prctl 2015-09-20 17:00:26 -07:00
selection.h
selinux.h
sem.h
semaphore.h
seq_buf.h
seq_file.h fs/seq_file: convert int seq_vprint/seq_printf/etc... returns to void 2015-09-11 15:21:34 -07:00
seq_file_net.h
seqlock.h
seqno-fence.h
serial.h
serial_8250.h
serial_bcm63xx.h
serial_core.h serial: Fix UPIO_MEM comment 2015-12-13 19:59:48 -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
shmem_fs.h mm, proc: reduce cost of /proc/pid/smaps for unpopulated shmem mappings 2016-01-14 16:00:49 -08:00
shrinker.h
signal.h kernel/signal.c: unexport sigsuspend() 2015-11-20 16:17:32 -08:00
signalfd.h
sirfsoc_dma.h
sizes.h
skbuff.h net: preserve IP control block during GSO segmentation 2016-01-15 14:35:24 -05:00
slab.h slab: add SLAB_ACCOUNT flag 2016-01-14 16:00:49 -08:00
slab_def.h
slub_def.h
sm501-regs.h
sm501.h
smc91x.h
smc911x.h
smp.h
smpboot.h stop_machine: Kill smp_hotplug_thread->pre_unpark, introduce stop_machine_unpark() 2015-10-20 10:23:55 +02:00
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
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 spmi: Auto-populate driver.owner in spmi_driver_register() 2015-09-20 19:32:02 -07:00
srcu.h rcu: Move preemption disabling out of __srcu_read_lock() 2015-10-06 11:15:43 -07:00
ssbi.h
stackprotector.h
stacktrace.h
start_kernel.h
stat.h
statfs.h
static_key.h
stddef.h
ste_modem_shm.h
stm.h stm class: Introduce an abstraction for System Trace Module devices 2015-10-04 20:28:58 +01:00
stmmac.h
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 new helper: memdup_user_nul() 2016-01-04 10:20:19 -05: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
sunxi-rsb.h bus: sunxi-rsb: Add driver for Allwinner Reduced Serial Bus 2015-10-26 10:11:58 +09:00
superhyway.h
suspend.h PM / sleep: Add flags to indicate platform firmware involvement 2015-10-14 02:17:33 +02:00
svga.h
sw842.h
swab.h
swap.h mm, thp: adjust conditions when we can reuse the page on WP fault 2016-01-15 17:56:32 -08: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 vfs: add copy_file_range syscall and vfs helper 2015-12-01 14:00:53 -05:00
syscore_ops.h
sysctl.h
sysfs.h platform/chrome: Branch for v4.4 2015-11-13 21:53:18 -08:00
syslog.h
sysrq.h
sysv_fs.h
t10-pi.h block: Consolidate static integrity profile properties 2015-10-21 14:42:38 -06:00
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: fix req->saved_syn race 2015-11-05 14:36:09 -05:00
textsearch.h
textsearch_fsm.h
tfrc.h
thermal.h thermal: fix thermal_zone_bind_cooling_device prototype 2015-11-23 15:34:34 -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 ti-st: use worker instead of calling st_int_write in wake up 2015-09-20 22:52:13 -07:00
tick.h
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
timekeeping.h ntp/pps: replace getnstime_raw_and_real with 64-bit version 2015-10-01 09:59:01 -07:00
timer.h
timerfd.h
timeriomem-rng.h
timerqueue.h
timex.h ntp/pps: use timespec64 for hardpps() 2015-10-01 09:57:59 -07:00
topology.h
torture.h
toshiba.h
tpm.h tpm: seal/unseal for TPM 2.0 2015-10-19 01:01:21 +02:00
tpm_command.h
trace_clock.h
trace_events.h tracing: Implement event pid filtering 2015-10-25 21:33:56 -04:00
trace_seq.h
tracefs.h
tracehook.h memcg: punt high overage reclaim to return-to-userland path 2015-11-05 19:34:48 -08:00
tracepoint-defs.h tracepoints: Move struct tracepoint to new tracepoint-defs.h header 2015-12-06 12:56:06 +01:00
tracepoint.h Not much new with tracing for this release. Mostly just clean ups and 2016-01-12 20:04:15 -08:00
transport_class.h
tsacct_kern.h
tty.h tty: Remove dead tty_write_flush() declaration and macro 2015-12-13 19:59:48 -08:00
tty_driver.h
tty_flip.h
tty_ldisc.h
typecheck.h
types.h arm64: fix building without CONFIG_UID16 2015-11-25 15:49:13 +00:00
u64_stats_sync.h
uaccess.h uaccess: reimplement probe_kernel_address() using probe_kernel_read() 2015-11-05 19:34:48 -08:00
ucb1400.h
ucs2_string.h
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 treewide: Remove old email address 2015-11-23 09:44:58 +01:00
usb.h usb: core: lpm: remove usb3_lpm_enabled in usb_device 2015-12-01 14:58:18 -08: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
vermagic.h
vexpress.h
vfio.h vfio: Include No-IOMMU mode 2015-12-21 15:28:11 -07:00
vfs.h
vga_switcheroo.h vga_switcheroo: Drop client power state VGA_SWITCHEROO_INIT 2015-11-05 11:07:36 +10:00
vgaarb.h
via-core.h
via-gpio.h
via.h
via_i2c.h
videodev2.h [media] use https://linuxtv.org for LinuxTV URLs 2015-12-04 10:38:59 -02:00
virtio.h
virtio_byteorder.h
virtio_caif.h
virtio_config.h
virtio_console.h
virtio_mmio.h
virtio_ring.h
vlynq.h
vm_event_item.h mm: support madvise(MADV_FREE) 2016-01-15 17:56:32 -08:00
vm_sockets.h
vmacache.h
vmalloc.h mm, vmalloc: remove VM_VPAGES 2016-01-14 16:00:49 -08:00
vme.h vme: 8-bit status/id takes 256 values, not 255 2015-10-17 22:03:00 -07:00
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
vringh.h
vt.h
vt_buffer.h
vt_kern.h
vtime.h sched/cputime: Introduce vtime accounting check for readers 2015-12-04 10:34:45 +01:00
w1-gpio.h
wait.h Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next 2016-01-12 18:57:02 -08:00
wanrouter.h
watchdog.h watchdog: include: add units for timeout values in kerneldoc 2015-11-03 20:46:26 +01:00
wireless.h
wl12xx.h
wm97xx.h
workqueue.h workqueue: implement lockup detector 2015-12-08 11:29:47 -05:00
writeback.h
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 mm: zbud: constify the zbud_ops 2015-09-08 15:35:28 -07:00
zconf.h
zlib.h
zorro.h
zpool.h mm: zsmalloc: constify struct zs_pool name 2015-11-06 17:50:42 -08:00
zsmalloc.h mm: zsmalloc: constify struct zs_pool name 2015-11-06 17:50:42 -08:00
zutil.h include/linux/zutil.h: fix usage example of zlib_adler32() 2015-11-06 17:50:42 -08:00