Shaohua Li
579f82901f
swap: add a simple detector for inappropriate swapin readahead
...
This is a patch to improve swap readahead algorithm. It's from Hugh and
I slightly changed it.
Hugh's original changelog:
swapin readahead does a blind readahead, whether or not the swapin is
sequential. This may be ok on harddisk, because large reads have
relatively small costs, and if the readahead pages are unneeded they can
be reclaimed easily - though, what if their allocation forced reclaim of
useful pages? But on SSD devices large reads are more expensive than
small ones: if the readahead pages are unneeded, reading them in caused
significant overhead.
This patch adds very simplistic random read detection. Stealing the
PageReadahead technique from Konstantin Khlebnikov's patch, avoiding the
vma/anon_vma sophistications of Shaohua Li's patch, swapin_nr_pages()
simply looks at readahead's current success rate, and narrows or widens
its readahead window accordingly. There is little science to its
heuristic: it's about as stupid as can be whilst remaining effective.
The table below shows elapsed times (in centiseconds) when running a
single repetitive swapping load across a 1000MB mapping in 900MB ram
with 1GB swap (the harddisk tests had taken painfully too long when I
used mem=500M, but SSD shows similar results for that).
Vanilla is the 3.6-rc7 kernel on which I started; Shaohua denotes his
Sep 3 patch in mmotm and linux-next; HughOld denotes my Oct 1 patch
which Shaohua showed to be defective; HughNew this Nov 14 patch, with
page_cluster as usual at default of 3 (8-page reads); HughPC4 this same
patch with page_cluster 4 (16-page reads); HughPC0 with page_cluster 0
(1-page reads: no readahead).
HDD for swapping to harddisk, SSD for swapping to VertexII SSD. Seq for
sequential access to the mapping, cycling five times around; Rand for
the same number of random touches. Anon for a MAP_PRIVATE anon mapping;
Shmem for a MAP_SHARED anon mapping, equivalent to tmpfs.
One weakness of Shaohua's vma/anon_vma approach was that it did not
optimize Shmem: seen below. Konstantin's approach was perhaps mistuned,
50% slower on Seq: did not compete and is not shown below.
HDD Vanilla Shaohua HughOld HughNew HughPC4 HughPC0
Seq Anon 73921 76210 75611 76904 78191 121542
Seq Shmem 73601 73176 73855 72947 74543 118322
Rand Anon 895392 831243 871569 845197 846496 841680
Rand Shmem 1058375 1053486 827935 764955 764376 756489
SSD Vanilla Shaohua HughOld HughNew HughPC4 HughPC0
Seq Anon 24634 24198 24673 25107 21614 70018
Seq Shmem 24959 24932 25052 25703 22030 69678
Rand Anon 43014 26146 28075 25989 26935 25901
Rand Shmem 45349 45215 28249 24268 24138 24332
These tests are, of course, two extremes of a very simple case: under
heavier mixed loads I've not yet observed any consistent improvement or
degradation, and wider testing would be welcome.
Shaohua Li:
Test shows Vanilla is slightly better in sequential workload than Hugh's
patch. I observed with Hugh's patch sometimes the readahead size is
shrinked too fast (from 8 to 1 immediately) in sequential workload if
there is no hit. And in such case, continuing doing readahead is good
actually.
I don't prepare a sophisticated algorithm for the sequential workload
because so far we can't guarantee sequential accessed pages are swap out
sequentially. So I slightly change Hugh's heuristic - don't shrink
readahead size too fast.
Here is my test result (unit second, 3 runs average):
Vanilla Hugh New
Seq 356 370 360
Random 4525 2447 2444
Attached graph is the swapin/swapout throughput I collected with 'vmstat
2'. The first part is running a random workload (till around 1200 of
the x-axis) and the second part is running a sequential workload.
swapin and swapout throughput are almost identical in steady state in
both workloads. These are expected behavior. while in Vanilla, swapin
is much bigger than swapout especially in random workload (because wrong
readahead).
Original patches by: Shaohua Li and Konstantin Khlebnikov.
[fengguang.wu@intel.com: swapin_nr_pages() can be static]
Signed-off-by: Hugh Dickins <hughd@google.com>
Signed-off-by: Shaohua Li <shli@fusionio.com>
Signed-off-by: Fengguang Wu <fengguang.wu@intel.com>
Cc: Rik van Riel <riel@redhat.com>
Cc: Wu Fengguang <fengguang.wu@intel.com>
Cc: Minchan Kim <minchan@kernel.org>
Cc: Konstantin Khlebnikov <khlebnikov@openvz.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2014-02-06 13:48:51 -08:00
..
amba
arm: fix comment header and macro name
2014-01-02 10:46:41 +01:00
bcma
Merge branch 'upstream' of git://git.linux-mips.org/pub/scm/ralf/upstream-linus
2014-01-30 17:20:32 -08:00
byteorder
can
ceph
Merge branch 'for-3.14/core' of git://git.kernel.dk/linux-block
2014-01-30 11:19:05 -08:00
clk
The second half of the clock framework pull requeust for 3.14 is
2014-01-28 18:44:53 -08:00
crush
crush: add set_choose_local_[fallback_]tries steps
2013-12-31 20:32:26 +02:00
decompress
dma
extcon
extcon: gpio: Add power resume support
2014-01-09 09:53:30 +09:00
fsl /bestcomm
gpio
gpiolib: convert gpiod_lookup description to kernel-doc
2013-12-09 14:18:33 +01:00
hsi
i2c
Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input
2014-01-24 17:17:30 -08:00
iio
iio: Remove support for the legacy event config interface
2013-12-08 13:13:52 +00:00
input
irqchip
Xtensa patchset for 3.14-rc1
2014-01-25 10:49:30 -08:00
isdn
lockd
mfd
Merge branch 'for-next' of git://git.kernel.org/pub/scm/linux/kernel/git/cooloney/linux-leds
2014-01-28 18:53:01 -08:00
mlx4
Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next
2014-01-25 11:17:34 -08:00
mlx5
IB/mlx5: Remove old field for create mkey mailbox
2014-01-22 23:23:54 -08:00
mmc
MMC highlights for 3.14:
2014-01-26 11:00:41 -08:00
mtd
mtd: mtdram: add missing 'const'
2014-01-20 11:55:23 -08:00
netfilter
netfilter: ipset: remove unused code
2014-01-03 23:41:35 +01:00
netfilter_arp
netfilter_bridge
netfilter_ipv4
netfilter_ipv6
nfsd
phy
phy: add phy_get_bus_width()/phy_set_bus_width() calls
2013-12-23 14:26:17 -06:00
pinctrl
pinctrl: Add void * to pinctrl_pin_desc
2014-01-16 14:25:37 +01:00
platform_data
Merge branch 'v4l_for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-media
2014-01-31 09:31:14 -08:00
power
isp1704_charger: Add DT support
2013-12-23 18:34:58 -08:00
raid
regulator
regulator: act8865: add PMIC act8865 driver
2013-12-24 13:47:40 +00:00
rtc
sched
Merge branch 'core-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip
2014-01-31 08:59:46 -08:00
spi
spi: Updates for v3.14
2014-01-25 13:20:36 -08:00
ssb
ssb: gpio: add own IRQ domain
2014-01-24 22:39:54 +01:00
sunrpc
Merge branch 'for-3.14' of git://linux-nfs.org/~bfields/linux
2014-01-30 10:18:43 -08:00
unaligned
usb
ARM: driver updates for 3.14
2014-01-23 18:49:36 -08:00
uwb
uwb: Use dev_is_pci() to check whether it is pci device
2013-12-08 18:01:56 -08:00
wimax
8250_pci.h
a.out.h
acct.h
acpi.h
Merge branch 'acpi-modules'
2014-01-17 01:59:38 +01:00
acpi_dma.h
acpi_pmtmr.h
adb.h
adfs_fs.h
aer.h
agp_backend.h
agpgart.h
ahci_platform.h
aio.h
alarmtimer.h
altera_jtaguart.h
altera_uart.h
amd-iommu.h
amifd.h
amifdreg.h
amigaffs.h
anon_inodes.h
apm-emulation.h
apm_bios.h
apple_bl.h
arcdevice.h
arm-cci.h
asn1.h
asn1_ber_bytecode.h
asn1_decoder.h
assoc_array.h
KEYS: Fix multiple key add into associative array
2013-12-02 11:24:18 +00:00
assoc_array_priv.h
async.h
async_tx.h
ata.h
ata_platform.h
atalk.h
ath9k_platform.h
ath9k: Use a separate TX gain table for WZR-HP-G450H
2013-12-09 15:37:58 -05:00
atm.h
atm_suni.h
atm_tcp.h
atmdev.h
atmel-mci.h
atmel-pwm-bl.h
atmel-ssc.h
atmel_pdc.h
atmel_pwm.h
atmel_serial.h
atmel_tc.h
atomic.h
attribute_container.h
audit.h
audit: Convert int limit uses to u32
2014-01-14 14:54:00 -05:00
auto_dev-ioctl.h
auto_fs.h
auxvec.h
auxvec.h: account for AT_HWCAP2 in AT_VECTOR_SIZE_BASE
2013-12-24 09:35:17 -08:00
average.h
b1pcmcia.h
backing-dev.h
backlight.h
balloon_compaction.h
basic_mmio_gpio.h
bcd.h
bch.h
bcm47xx_wdt.h
bfin_mac.h
binfmts.h
execve: use 'struct filename *' for executable name passing
2014-02-05 12:54:53 -08:00
bio.h
block: Kill bio_pair_split()
2013-11-23 22:33:57 -08:00
bit_spinlock.h
bitmap.h
bitops.h
bitrev.h
blk-iopoll.h
blk-mq.h
blk-mq: for_each_* macro correctness
2014-01-28 08:09:46 -07:00
blk_types.h
block: Generic bio chaining
2013-11-23 22:33:56 -08:00
blkdev.h
kernel: use lockless list for smp_call_function_single
2014-01-30 16:56:54 -08:00
blktrace_api.h
blockgroup_lock.h
bma150.h
bootmem.h
memblock, bootmem: restore goal for alloc_low
2014-01-30 16:56:54 -08:00
bottom_half.h
sched/preempt, locking: Rework local_bh_{dis,en}able()
2014-01-13 17:32:27 +01:00
brcmphy.h
bsearch.h
bsg-lib.h
bsg.h
btree-128.h
btree-type.h
btree.h
btrfs.h
buffer_head.h
bug.h
c2port.h
cache.h
printk/cache: mark printk_once test variable __read_mostly
2014-01-23 16:36:56 -08:00
capability.h
cb710.h
cciss_ioctl.h
ccp.h
crypto: ccp - CCP device enabled/disabled changes
2014-01-15 11:33:40 +08:00
cdev.h
cdrom.h
cfag12864b.h
cgroup.h
cgroup: remove stray references to css_id
2014-01-13 10:48:18 -05:00
cgroup_subsys.h
net: netprio: rename config to be more consistent with cgroup configs
2014-01-03 23:41:42 +01:00
circ_buf.h
cleancache.h
clk-private.h
Merge branch 'clk-next-unregister' into clk-next
2013-12-31 11:35:12 -08:00
clk-provider.h
Merge branch 'next' of git://git.kernel.org/pub/scm/linux/kernel/git/benh/powerpc
2014-01-30 17:07:18 -08:00
clk.h
clk: add clk accuracy retrieval support
2013-12-22 23:14:27 -08:00
clkdev.h
clk: Add common __clk_get(), __clk_put() implementations
2013-12-04 17:19:44 +01:00
clksrc-dbx500-prcmu.h
clockchips.h
clocksource.h
cm4000_cs.h
cmdline-parser.h
block: remove unrelated header files and export symbol
2014-01-21 20:18:26 -08:00
cn_proc.h
cnt32_to_63.h
coda.h
coda_psdev.h
com20020.h
compaction.h
mm: compaction: encapsulate defer reset logic
2014-01-21 16:19:48 -08:00
compat.h
Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs
2014-02-01 10:43:45 -08:00
compiler-gcc.h
crypto: more robust crypto_memneq
2013-12-05 21:28:41 +08:00
compiler-gcc3.h
compiler-gcc4.h
compiler-intel.h
Merge git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6
2014-01-23 18:11:00 -08:00
compiler.h
Merge git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6
2014-01-23 18:11:00 -08:00
completion.h
component.h
drivers/base: provide an infrastructure for componentised subsystems
2014-01-10 16:27:36 -08:00
concap.h
configfs.h
connector.h
console.h
console_struct.h
consolemap.h
container.h
ACPI / hotplug / driver core: Handle containers in a special way
2013-12-29 15:25:48 +01:00
context_tracking.h
context_tracking: Wrap static key check into more intuitive function name
2013-12-02 20:43:14 +01:00
context_tracking_state.h
context_tracking: Rename context_tracking_active() to context_tracking_cpu_is_enabled()
2013-12-02 20:43:15 +01:00
cordic.h
coredump.h
cper.h
cpu.h
cpu_cooling.h
thermal: cpu_cooling: introduce of_cpufreq_cooling_register
2013-12-04 09:33:34 -04:00
cpu_pm.h
cpu_rmap.h
cpufreq.h
cpufreq: Add boost frequency support in core
2014-01-17 02:00:44 +01:00
cpuidle.h
cpumask.h
cpuset.h
crash_dump.h
crash_dump: fix compilation error (on MIPS at least)
2014-01-15 14:19:42 +07:00
crc-ccitt.h
crc-itu-t.h
crc-t10dif.h
crc7.h
crc8.h
crc16.h
crc32.h
crc32c.h
cred.h
crypto.h
cryptohash.h
cryptouser.h
cs5535.h
ctype.h
cuda.h
cyclades.h
cycx_x25.h
davinci_emac.h
dca.h
dcache.h
dcache: allow word-at-a-time name hashing with big-endian CPUs
2013-12-12 10:39:01 -08:00
dccp.h
dcookies.h
debug_locks.h
debugfs.h
debugobjects.h
delay.h
delayacct.h
devfreq.h
device-mapper.h
device.h
Revert "kernfs, sysfs, driver-core: implement kernfs_remove_self() and its wrappers"
2014-01-13 14:05:13 -08: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
block: Convert drivers to immutable biovecs
2013-11-23 22:33:51 -08:00
dm-kcopyd.h
dm-region-hash.h
dm9000.h
dma-attrs.h
dma-buf.h
dma-contiguous.h
dma-debug.h
dma-debug: introduce debug_dma_assert_idle()
2014-01-21 16:19:41 -08:00
dma-direction.h
dma-mapping.h
dma_remapping.h
iommu/vt-d: keep shared resources when failed to initialize iommu devices
2014-01-09 12:43:40 +01:00
dmaengine.h
Merge branch 'for-linus' of git://git.infradead.org/users/vkoul/slave-dma
2014-01-29 20:27:23 -08:00
dmapool.h
dmar.h
iommu/vt-d, trivial: simplify code with existing macros
2014-01-09 12:43:37 +01:00
dmi.h
dnotify.h
dns_resolver.h
dqblk_qtree.h
dqblk_v1.h
dqblk_v2.h
drbd.h
drbd_genl.h
drbd_genl_api.h
drbd_limits.h
ds1286.h
ds2782_battery.h
ds17287rtc.h
dtlk.h
dw_apb_timer.h
dw_dmac.h
dynamic_debug.h
dynamic_queue_limits.h
earlycpio.h
ecryptfs.h
edac.h
EDAC: Add an edac_report parameter to EDAC
2013-12-11 18:06:47 +01:00
edd.h
edma.h
eeprom_93cx6.h
eeprom_93xx46.h
efi-bgrt.h
efi.h
Linux 3.13-rc7
2014-01-05 12:34:29 +01:00
efs_vh.h
eisa.h
elevator.h
elf-fdpic.h
elf.h
elfcore-compat.h
elfcore.h
elfnote.h
enclosure.h
err.h
errno.h
errqueue.h
etherdevice.h
etherdevice: Use ether_addr_copy to copy an Ethernet address
2014-01-15 15:39:33 -08:00
ethtool.h
eventfd.h
eventpoll.h
evm.h
export.h
export: declare ksymtab symbols
2014-01-16 10:23:02 +10:30
exportfs.h
ext2_fs.h
extcon.h
f2fs_fs.h
f2fs: add inline_data recovery routine
2014-01-06 16:42:20 +09:00
f75375s.h
falloc.h
fanotify.h
fault-inject.h
fb.h
video/fb: Propagate error code from failing to unregister conflicting fb
2013-12-18 10:56:13 +10:00
fcdevice.h
fcntl.h
fd.h
fddidevice.h
fdtable.h
introduce __fcheck_files() to fix rcu_dereference_check_fdtable(), kill rcu_my_thread_group_empty()
2014-01-25 03:14:36 -05:00
fec.h
file.h
filter.h
net: filter: let bpf_tell_extensions return SKF_AD_MAX
2014-01-21 18:57:43 -08:00
fips.h
firewire.h
firmware-map.h
firmware.h
firmware: Introduce request_firmware_direct()
2013-12-08 18:22:32 -08:00
fixp-arith.h
flat.h
flex_array.h
reciprocal_divide: update/correction of the algorithm
2014-01-21 23:17:20 -08:00
flex_proportions.h
fmc-sdb.h
fmc.h
font.h
freezer.h
frontswap.h
fs.h
execve: use 'struct filename *' for executable name passing
2014-02-05 12:54:53 -08:00
fs_enet_pd.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
fsnotify.h
fsnotify_backend.h
fsnotify: Do not return merged event from fsnotify_add_notify_event()
2014-01-29 13:57:10 +01:00
ftrace.h
tracing: Add generic tracing_lseek() function
2014-01-02 16:17:12 -05:00
ftrace_event.h
tracing: Consolidate event trigger code
2014-01-09 21:20:07 -05:00
ftrace_irq.h
futex.h
gameport.h
gcd.h
genalloc.h
include/linux/genalloc.h: spinlock_t needs spinlock_types.h
2014-01-23 16:36:52 -08:00
genetlink.h
genhd.h
genl_magic_func.h
genl_magic_struct.h
getcpu.h
gfp.h
mm: dump page when hitting a VM_BUG_ON using VM_BUG_ON_PAGE
2014-01-23 16:36:50 -08:00
gpio-fan.h
gpio-pxa.h
gpio.h
gpio: Remove duplicate include of errno.h
2013-11-25 09:03:39 +01:00
gpio_keys.h
gpio_mouse.h
gsmmux.h
hardirq.h
sched/preempt, locking: Rework local_bh_{dis,en}able()
2014-01-13 17:32:27 +01:00
hash.h
lib: introduce arch optimized hash library
2013-12-17 14:27:17 -05:00
hashtable.h
hdlc.h
hdlcdrv.h
hdmi.h
hid-debug.h
hid-roccat.h
hid-sensor-hub.h
HID: hid-sensor-hub: Add logical min and max
2013-12-02 21:05:30 +00:00
hid-sensor-ids.h
2nd round of new IIO drivers, features and cleanups for the 3.14 cycle.
2013-12-24 10:30:57 -08:00
hid.h
hiddev.h
hidraw.h
highmem.h
highuid.h
hil.h
hil_mlc.h
hippidevice.h
host1x.h
gpu: host1x: Add MIPI pad calibration support
2013-12-19 09:29:43 +01:00
hp_sdc.h
hpet.h
hrtimer.h
htcpld.h
htirq.h
huge_mm.h
mm: thp: optimize compound_trans_huge
2014-01-21 16:19:43 -08:00
hugetlb.h
mm: dump page when hitting a VM_BUG_ON using VM_BUG_ON_PAGE
2014-01-23 16:36:50 -08:00
hugetlb_cgroup.h
mm: dump page when hitting a VM_BUG_ON using VM_BUG_ON_PAGE
2014-01-23 16:36:50 -08:00
hugetlb_inline.h
hw_breakpoint.h
hw_random.h
hwmon-sysfs.h
hwmon-vid.h
hwmon.h
hwspinlock.h
hyperv.h
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: pnx: Use devm_*() functions
2014-01-16 11:15:50 +01:00
i2c-pxa.h
i2c-smbus.h
Update Jean Delvare's e-mail address
2014-01-29 20:40:08 +01:00
i2c-xiic.h
i2c.h
i2c: update i2c_algorithm documentation
2014-01-26 22:48:35 +01:00
i2o.h
i7300_idle.h
i8042.h
i8253.h
i82593.h
icmp.h
icmpv6.h
ide.h
ACPI: Clean up inclusions of ACPI header files
2013-12-07 01:03:14 +01:00
idr.h
ieee80211.h
ieee80211: add definition for SMS4 key len
2014-01-10 20:12:13 +01:00
if_arp.h
if_bridge.h
if_eql.h
if_ether.h
if_fddi.h
if_frad.h
if_link.h
if_ltalk.h
if_macvlan.h
macvlan: unify macvlan_pcpu_stats and vlan_pcpu_stats
2014-01-04 20:11:33 -05:00
if_phonet.h
if_pppol2tp.h
if_pppox.h
if_team.h
if_tun.h
if_tunnel.h
net: unify the pcpu_tstats and br_cpu_netstats as one
2014-01-04 20:10:24 -05:00
if_vlan.h
8021q: make vlan_pcpu_stats visible without CONFIG_VLAN_8021Q
2014-01-05 20:27:55 -05:00
igmp.h
ihex.h
ima.h
in.h
in6.h
inet.h
inet_diag.h
inet_lro.h
lro: remove dead code
2013-12-29 16:34:25 -05:00
inetdevice.h
ipv4: fix wildcard search with inet_confirm_addr()
2013-12-11 14:47:40 -05:00
init.h
init.h: add missing initcall variants
2013-12-10 22:58:13 -08:00
init_ohci1394_dma.h
init_task.h
Merge git://git.infradead.org/users/eparis/audit
2014-01-23 18:08:10 -08:00
initrd.h
inotify.h
input-polldev.h
input.h
integrity.h
intel-iommu.h
iommu/vt-d: keep shared resources when failed to initialize iommu devices
2014-01-09 12:43:40 +01:00
intel_mid_dma.h
intel_pmic_gpio.h
interrupt.h
softirq: use const char * const for softirq_to_name, whitespace neatening
2014-01-27 21:02:40 -08:00
interval_tree.h
interval_tree_generic.h
io-mapping.h
io.h
ioc3.h
ioc4.h
iocontext.h
iommu-helper.h
iommu.h
Merge branches 'arm/smmu', 'core', 'x86/vt-d', 'arm/shmobile', 'x86/amd', 'ppc/pamu', 'iommu/fixes' and 'arm/msm' into next
2014-01-09 13:06:59 +01:00
ioport.h
ioprio.h
iova.h
ip.h
ipack.h
ipc.h
ipc: change kern_ipc_perm.deleted type to bool
2014-01-27 21:02:39 -08:00
ipc_namespace.h
ipc: delete seq_max field in struct ipc_ids
2014-01-27 21:02:40 -08:00
ipmi-fru.h
ipmi.h
ipmi_smi.h
ipv6.h
ipv6: make IPV6_RECVPKTINFO work for ipv4 datagrams
2014-01-19 19:53:18 -08:00
ipv6_route.h
irq.h
irq_cpustat.h
irq_work.h
irqchip.h
irqdesc.h
genirq: Add an accessor for IRQ_PER_CPU flag
2013-12-19 17:43:04 +00:00
irqdomain.h
irqflags.h
irqnr.h
irqreturn.h
isa.h
isapnp.h
iscsi_boot_sysfs.h
iscsi_ibft.h
ACPI / IBFT: Fix incorrect <acpi/acpi.h> inclusion in iSCSI boot firmware module
2013-12-07 01:24:33 +01:00
isdn.h
isdn_divertif.h
isdn_ppp.h
isdnif.h
isicom.h
jbd.h
jbd2.h
jbd_common.h
jhash.h
jiffies.h
sched/nohz: Fix overflow error in scheduler_tick_max_deferment()
2014-01-16 00:08:12 +01:00
journal-head.h
joystick.h
jump_label.h
jump_label: use defined macros instead of hard-coding for better readability
2014-01-08 15:23:53 +00:00
jump_label_ratelimit.h
jz4740-adc.h
kallsyms.h
kbd_diacr.h
kbd_kern.h
kbuild.h
kcmp.h
kconfig.h
kcore.h
kd.h
kdb.h
kdebug.h
kdev_t.h
kern_levels.h
kernel-page-flags.h
kernel.h
Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next
2014-01-25 11:17:34 -08:00
kernel_stat.h
kernelcapi.h
kernfs.h
kernfs: add struct dentry declaration in kernfs.h
2014-01-17 11:50:07 -08:00
kexec.h
kexec: add sysctl to disable kexec_load
2014-01-23 16:37:03 -08:00
key-type.h
key.h
keyboard.h
kfifo.h
kgdb.h
kgdb/kdb: Fix no KDB config problem
2014-01-25 08:55:09 +01:00
khugepaged.h
klist.h
kmemcheck.h
kmemleak.h
kmod.h
kmsg_dump.h
kobj_map.h
kobject.h
kernfs: s/sysfs_dirent/kernfs_node/ and rename its friends accordingly
2013-12-11 15:28:36 -08:00
kobject_ns.h
kprobes.h
kref.h
ks0108.h
ks8842.h
ks8851_mll.h
ksm.h
mm/rmap: use rmap_walk() in page_referenced()
2014-01-21 16:19:45 -08:00
kthread.h
ktime.h
kvm_host.h
kvm: remove dead code
2014-01-08 19:03:00 -02:00
kvm_para.h
kvm_types.h
l2tp.h
lapb.h
latencytop.h
lcd.h
lcm.h
led-lm3530.h
leds-bd2802.h
leds-lp3944.h
leds-pca9532.h
leds-regulator.h
leds-tca6507.h
leds.h
leds_pwm.h
lglock.h
lguest.h
lguest_launcher.h
libata.h
libata: disable LPM for some WD SATA-I devices
2014-01-16 09:49:10 -05:00
libfdt.h
libfdt_env.h
libps2.h
license.h
linkage.h
arch: use ASM_NL instead of ';' for assembler new line character in the macro
2014-01-27 21:45:29 +01:00
linux_logo.h
lis3lv02d.h
list.h
list_bl.h
list_lru.h
list_nulls.h
list_sort.h
llc.h
llist.h
lockdep.h
lockref.h
mm: do not allocate page->ptl dynamically, if spinlock_t fits to long
2013-12-20 12:25:45 -08:00
log2.h
lp.h
lru_cache.h
lsm_audit.h
lz4.h
lzo.h
m48t86.h
mailbox.h
maple.h
marvell_phy.h
math64.h
math64: Add mul_u64_u32_shr()
2013-12-11 15:52:34 +01:00
max17040_battery.h
mbcache.h
mbus.h
mc6821.h
mc146818rtc.h
mdio-bitbang.h
mdio-gpio.h
mdio-mux.h
mdio.h
mdio: unused ethtool functions
2013-12-26 13:29:35 -05:00
mei_cl_bus.h
memblock.h
mm: free memblock.memory in free_all_bootmem
2014-01-23 16:36:51 -08:00
memcontrol.h
memcg, slab: clean up memcg cache initialization/destruction
2014-01-23 16:36:51 -08:00
memory.h
drivers: base: Add prototype declaration to the header file
2013-12-20 12:20:26 -08:00
memory_hotplug.h
mempolicy.h
mm, mempolicy: remove unneeded functions for UMA configs
2014-01-21 16:19:44 -08:00
mempool.h
memstick.h
mg_disk.h
micrel_phy.h
micrel: add support for KSZ8041RNLI
2013-12-11 13:54:13 -05:00
migrate.h
mm/migrate: remove unused function, fail_migrate_page()
2014-01-21 16:19:49 -08:00
migrate_mode.h
mii.h
miscdevice.h
misc: Reserve minor for VFIO
2013-12-19 10:17:11 -07:00
mISDNdsp.h
mISDNhw.h
mISDNif.h
mm.h
Merge branch 'next' of git://git.kernel.org/pub/scm/linux/kernel/git/benh/powerpc
2014-01-27 21:11:26 -08:00
mm_inline.h
mm_types.h
mm: do not allocate page->ptl dynamically, if spinlock_t fits to long
2013-12-20 12:25:45 -08:00
mman.h
mm: add overcommit_kbytes sysctl variable
2014-01-21 16:19:44 -08:00
mmdebug.h
mm: dump page when hitting a VM_BUG_ON using VM_BUG_ON_PAGE
2014-01-23 16:36:50 -08:00
mmiotrace.h
mmu_context.h
mmu_notifier.h
mmzone.h
mm: numa: limit scope of lock for NUMA migrate rate limiting
2014-01-21 16:19:48 -08:00
mnt_namespace.h
mod_devicetable.h
module.h
module: fix coding style
2014-01-16 10:23:03 +10:30
moduleloader.h
moduleparam.h
mount.h
mpage.h
mpi.h
mroute.h
mroute6.h
msdos_fs.h
msg.h
ipc: whitespace cleanup
2014-01-27 21:02:39 -08:00
msi.h
PCI: Drop "irq" param from *_restore_msi_irqs()
2013-12-13 08:44:30 -07:00
msm_mdp.h
mutex-debug.h
mutex.h
mv643xx.h
mv643xx_eth.h
mv643xx_i2c.h
mxm-wmi.h
n_r3964.h
namei.h
nbd.h
net.h
net: replace macros net_random and net_srandom with direct calls to prandom
2014-01-14 15:15:25 -08:00
netdev_features.h
netdevice.h
rtnetlink: remove ndo_get_slave
2014-01-22 21:57:17 -08:00
netfilter.h
netfilter_bridge.h
netfilter_ipv4.h
netfilter_ipv6.h
netlink.h
netlink: cleanup tap related functions
2014-01-01 23:43:36 -05:00
netpoll.h
nfs.h
nfs3.h
nfs4.h
NFS client bugfixes
2013-12-05 13:05:48 -08:00
nfs_fs.h
NFS client bugfixes for Linux 3.14
2014-01-31 15:39:07 -08:00
nfs_fs_i.h
nfs_fs_sb.h
nfs_idmap.h
nfs_iostat.h
nfs_page.h
nfs_xdr.h
NFSv4: Fix memory corruption in nfs4_proc_open_confirm
2014-02-01 15:13:39 -05:00
nfsacl.h
nilfs2_fs.h
nl802154.h
nls.h
nls: have register_nls() set ->owner
2014-01-25 03:14:05 -05:00
nmi.h
node.h
nodemask.h
notifier.h
nsc_gpio.h
nsproxy.h
ntb.h
nubus.h
numa.h
nvme.h
NVMe: Abort timed out commands
2014-01-27 19:27:53 -05:00
nvram.h
nwpserial.h
nx842.h
of.h
include/linux/of.h: make for_each_child_of_node() reference its args when CONFIG_OF=n
2014-01-23 16:36:55 -08:00
of_address.h
of_device.h
platform: introduce OF style 'modalias' support for platform bus
2014-01-17 01:59:15 +01:00
of_dma.h
of_fdt.h
powerpc: introduce early_get_first_memblock_info
2014-01-09 17:52:17 -06:00
of_gpio.h
of_iommu.h
of_irq.h
of_mdio.h
phylib: Add of_phy_attach
2014-01-13 14:29:49 -08:00
of_mtd.h
of_mtd: fix header file include guard
2014-01-03 11:22:21 -08:00
of_net.h
of_pci.h
of_pdt.h
of_platform.h
oid_registry.h
olpc-ec.h
omap-dma.h
omap-iommu.h
omap-mailbox.h
omapfb.h
oom.h
openvswitch.h
oprofile.h
oxu210hp.h
padata.h
page-debug-flags.h
page-flags-layout.h
page-flags.h
swap: add a simple detector for inappropriate swapin readahead
2014-02-06 13:48:51 -08:00
page-isolation.h
page_cgroup.h
pageblock-flags.h
pagemap.h
mm: dump page when hitting a VM_BUG_ON using VM_BUG_ON_PAGE
2014-01-23 16:36:50 -08:00
pagevec.h
parport.h
parport_pc.h
parser.h
lib/parser.c: add match_wildcard() function
2014-01-23 16:36:55 -08:00
pata_arasan_cf_data.h
patchkey.h
path.h
pch_dma.h
pci-acpi.h
pci-aspm.h
pci-ats.h
PCI: Removed unused parts of Page Request Interface support
2014-01-10 14:00:47 -07:00
pci-dma.h
pci.h
PCI changes for the v3.14 merge window:
2014-01-22 16:39:28 -08:00
pci_hotplug.h
ACPI: Clean up inclusions of ACPI header files
2013-12-07 01:03:14 +01:00
pci_ids.h
pcieport_if.h
pda_power.h
percpu-defs.h
percpu: fix spurious sparse warnings from DEFINE_PER_CPU()
2013-12-05 12:59:23 -05:00
percpu-refcount.h
percpu-rwsem.h
percpu.h
mm: dump page when hitting a VM_BUG_ON using VM_BUG_ON_PAGE
2014-01-23 16:36:50 -08:00
percpu_counter.h
percpu_ida.h
percpu_ida: Make percpu_ida_alloc + callers accept task state bitmask
2014-01-23 20:17:18 +00:00
perf_event.h
perf/x86: Fix active_entry initialization
2014-01-12 10:16:07 +01:00
perf_regs.h
personality.h
pfn.h
phonedev.h
phonet.h
phy.h
phylib: Support attaching to generic 10g driver
2014-01-13 14:29:49 -08:00
phy_fixed.h
pid.h
pid_namespace.h
pim.h
pipe_fs_i.h
fuse: fix pipe_buf_operations
2014-01-22 19:36:57 +01:00
pktcdvd.h
platform_device.h
plist.h
pm.h
Merge branches 'pm-sleep', 'pm-runtime' and 'pm-apm'
2014-01-12 23:50:03 +01:00
pm2301_charger.h
pm_clock.h
pm_domain.h
pm_opp.h
pm_qos.h
pm_runtime.h
PM / Runtime: Implement the pm_generic_runtime functions for CONFIG_PM
2013-12-22 01:39:58 +01:00
pm_wakeup.h
pmu.h
pnfs_osd_xdr.h
pnp.h
poison.h
poll.h
posix-clock.h
posix-timers.h
posix_acl.h
Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs
2014-01-28 08:38:04 -08:00
posix_acl_xattr.h
fs: add generic xattr_acl handlers
2014-01-25 23:58:17 -05:00
power_supply.h
power_supply: Add power_supply_get_by_phandle
2013-12-23 18:21:11 -08:00
powercap.h
ppp-comp.h
ppp_channel.h
ppp_defs.h
pps-gpio.h
pps_kernel.h
preempt.h
sched/preempt/x86: Fix voluntary preempt for x86
2014-01-23 14:48:35 +01:00
preempt_mask.h
sched/preempt, locking: Rework local_bh_{dis,en}able()
2014-01-13 17:32:27 +01:00
prefetch.h
printk.h
Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next
2014-01-25 11:17:34 -08:00
prio_heap.h
proc_fs.h
proc_ns.h
profile.h
projid.h
userns: userns: Remove UIDGID_STRICT_TYPE_CHECKS
2013-11-26 20:55:33 -08:00
proportions.h
pstore.h
pstore: Don't allow high traffic options on fragile devices
2013-12-20 13:12:01 -08:00
pstore_ram.h
pti.h
ptp_classify.h
ptp_clock_kernel.h
ptrace.h
pvclock_gtod.h
pwm.h
pwm_backlight.h
pxa2xx_ssp.h
pxa168_eth.h
qnx6_fs.h
quicklist.h
quota.h
quotaops.h
radix-tree.h
raid_class.h
ramfs.h
fs/ramfs/file-nommu.c: make ramfs_nommu_get_unmapped_area() and ramfs_nommu_mmap() static
2014-01-23 16:36:58 -08:00
random.h
random32: add prandom_u32_max and convert open coded users
2014-01-21 23:17:20 -08:00
range.h
ratelimit.h
rational.h
rbtree.h
rbtree_augmented.h
rculist.h
rcu: Remove "extern" from function declarations in include/linux/*rcu*.h
2013-12-12 12:34:16 -08:00
rculist_bl.h
rculist_nulls.h
rcupdate.h
Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs
2014-01-28 08:38:04 -08:00
rcutiny.h
rcu: Remove "extern" from function declarations in include/linux/*rcu*.h
2013-12-12 12:34:16 -08:00
rcutree.h
rcu: Remove "extern" from function declarations in include/linux/*rcu*.h
2013-12-12 12:34:16 -08:00
reboot.h
kexec: migrate to reboot cpu
2013-12-18 19:04:50 -08:00
reciprocal_div.h
reciprocal_divide: update/correction of the algorithm
2014-01-21 23:17:20 -08:00
regmap.h
Merge remote-tracking branch 'regmap/topic/ack' into regmap-next
2014-01-09 14:34:13 +00:00
regset.h
relay.h
remoteproc.h
res_counter.h
reservation.h
reset-controller.h
reset: Silence warning in reset-controller.h
2014-01-16 12:00:56 -08:00
reset.h
resource.h
resume-trace.h
rfkill-gpio.h
rfkill-regulator.h
rfkill.h
ring_buffer.h
rio.h
rio_drv.h
rio_ids.h
rio_regs.h
rmap.h
mm/rmap: use rmap_walk() in page_referenced()
2014-01-21 16:19:45 -08:00
rndis.h
root_dev.h
rotary_encoder.h
rpmsg.h
rslib.h
rtc-ds2404.h
rtc-v3020.h
rtc.h
rtmutex.h
rtmutex: Turn the plist into an rb-tree
2014-01-13 13:41:50 +01:00
rtnetlink.h
net: allow netdev_all_upper_get_next_dev_rcu with rtnl lock held
2013-12-17 21:19:08 -08:00
rwlock.h
rwlock_api_smp.h
locking: Optimize lock_bh functions
2014-01-13 13:47:36 +01:00
rwlock_types.h
rwsem-spinlock.h
rwsem.h
rwsem: add rwsem_is_contended
2014-01-28 13:20:09 -08:00
rxrpc.h
s3c_adc_battery.h
sa11x0-dma.h
scatterlist.h
lib/scatterlist: export sg_miter_skip()
2013-12-08 17:56:37 -08:00
scc.h
sched.h
execve: use 'struct filename *' for executable name passing
2014-02-05 12:54:53 -08:00
sched_clock.h
screen_info.h
sctp.h
sctp: fix missing SCTP mailing list address update
2014-01-19 19:55:50 -08:00
scx200.h
scx200_gpio.h
sdb.h
sdla.h
seccomp.h
securebits.h
security.h
selection.h
selinux.h
sem.h
semaphore.h
seq_file.h
seq_file_net.h
seqlock.h
seqlock: Use raw_ prefix instead of _no_lockdep
2014-01-12 10:13:59 +01:00
serial.h
serial_8250.h
serial_bcm63xx.h
MIPS: BCM63XX: move UART register definitions
2014-01-23 13:02:36 +01:00
serial_core.h
serial_max3100.h
serial_mfd.h
serial_pnx8xxx.h
serial_s3c.h
serial_sci.h
serial: sh-sci: Remove platform data mapbase and irqs fields
2013-12-24 21:50:54 +09:00
serio.h
sfi.h
sfi_acpi.h
SFI / ACPI: Fix warnings reported during builds with W=1
2013-12-07 01:24:33 +01:00
sh_clk.h
sh_dma.h
sh_eth.h
sh_eth: add PHY IRQ to platform data
2013-12-19 19:09:38 -05:00
sh_intc.h
sh_timer.h
shdma-base.h
shm.h
ipc: whitespace cleanup
2014-01-27 21:02:39 -08:00
shmem_fs.h
security: shmem: implement kernel private shmem inodes
2013-12-02 11:24:19 +00:00
shrinker.h
signal.h
signalfd.h
sirfsoc_dma.h
sizes.h
skbuff.h
net: add and use skb_gso_transport_seglen()
2014-01-26 22:38:23 -08:00
slab.h
Merge branch 'slab/next' of git://git.kernel.org/pub/scm/linux/kernel/git/penberg/linux
2014-02-02 11:30:08 -08:00
slab_def.h
Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next
2014-01-25 11:17:34 -08:00
slub_def.h
Merge branch 'slab/next' of git://git.kernel.org/pub/scm/linux/kernel/git/penberg/linux
2013-11-22 08:10:34 -08:00
sm501-regs.h
sm501.h
smc91x.h
smc911x.h
smp.h
kernel: use lockless list for smp_call_function_single
2014-01-30 16:56:54 -08:00
smpboot.h
smsc911x.h
smscphy.h
sock_diag.h
socket.h
net: update comments of "struct msghdr" with the more accurate RFC3542 ones
2014-01-22 21:57:05 -08:00
sonet.h
sony-laptop.h
sonypi.h
sort.h
sound.h
soundcard.h
spinlock.h
locking: Add an smp_mb__after_unlock_lock() for UNLOCK+BLOCK barrier
2013-12-16 11:36:13 +01:00
spinlock_api_smp.h
locking: Optimize lock_bh functions
2014-01-13 13:47:36 +01:00
spinlock_api_up.h
locking: Optimize lock_bh functions
2014-01-13 13:47:36 +01:00
spinlock_types.h
spinlock_types_up.h
spinlock_up.h
splice.h
splice: fix unexpected size truncation
2014-01-27 21:02:40 -08:00
srcu.h
ssbi.h
mfd: ssbi: Constify buffer in ssbi_write
2014-01-21 08:28:07 +00:00
stackprotector.h
stacktrace.h
start_kernel.h
stat.h
statfs.h
static_key.h
stddef.h
ste_modem_shm.h
stmmac.h
stmmac: Fix kernel crashes for jumbo frames
2014-01-21 17:05:27 -08:00
stmp3xxx_rtc_wdt.h
stmp_device.h
stop_machine.h
string.h
string_helpers.h
stringify.h
sudmac.h
sungem_phy.h
sunserialcore.h
superhyway.h
suspend.h
svga.h
swab.h
swap.h
swapfile.h
swapops.h
swiotlb.h
synclink.h
sys.h
sys_soc.h
syscalls.h
sched: Add new scheduler syscalls to support an extended scheduling parameters ABI
2014-01-13 13:41:04 +01:00
syscore_ops.h
sysctl.h
sysfs.h
Revert "kernfs, sysfs, driver-core: implement kernfs_remove_self() and its wrappers"
2014-01-13 14:05:13 -08:00
syslog.h
sysrq.h
sysv_fs.h
task_io_accounting.h
task_io_accounting_ops.h
task_work.h
taskstats_kern.h
tboot.h
ACPI: Clean up inclusions of ACPI header files
2013-12-07 01:03:14 +01:00
tc.h
tca6416_keypad.h
tcp.h
tcp: out_of_order_queue do not use its lock
2014-01-06 16:34:34 -05:00
tegra-ahb.h
tegra-cpuidle.h
tegra-powergate.h
ARM: tegra: fix tegra_powergate_sequence_power_up() inline
2014-01-14 08:01:10 -08:00
tegra-soc.h
textsearch.h
textsearch_fsm.h
tfrc.h
thermal.h
thermal: core: introduce thermal_of_cooling_device_register
2013-12-04 09:31:34 -04:00
thinkpad_acpi.h
thread_info.h
threads.h
ti_wilink_st.h
tick.h
tick: Rename tick_check_idle() to tick_irq_enter()
2014-01-15 23:05:31 +01:00
tifm.h
timb_dma.h
timb_gpio.h
time.h
timekeeper_internal.h
timer.h
timerfd.h
timeriomem-rng.h
timerqueue.h
timex.h
topology.h
toshiba.h
tpm.h
tpm: Create a tpm_class_ops structure and use it in the drivers
2014-01-06 14:37:25 +01:00
tpm_command.h
trace_clock.h
trace_seq.h
tracehook.h
tracepoint.h
Merge branch 'master' into for-next
2013-12-19 15:08:32 +01:00
transport_class.h
tsacct_kern.h
tty.h
USB patches for 3.14-rc1
2014-01-20 16:13:02 -08:00
tty_driver.h
tty_flip.h
tty: Halve flip buffer GFP_ATOMIC memory consumption
2013-12-09 11:09:24 -08:00
tty_ldisc.h
tty: Always handle NULL flag ptr
2013-12-08 16:56:05 -08:00
typecheck.h
types.h
u64_stats_sync.h
uaccess.h
sched/preempt: Take away preempt_enable_no_resched() from modules
2014-01-13 13:47:37 +01:00
ucb1400.h
ucs2_string.h
udp.h
uidgid.h
userns: userns: Remove UIDGID_STRICT_TYPE_CHECKS
2013-11-26 20:55:33 -08:00
uinput.h
uio.h
uio_driver.h
uprobes.h
usb.h
usb: core: allow a reference device for new_id
2014-01-10 16:54:35 -08:00
usb_usual.h
usbdevice_fs.h
user-return-notifier.h
user.h
user_namespace.h
uts.h
utsname.h
uuid.h
uwb.h
vermagic.h
vexpress.h
vfio.h
vfs.h
vga_switcheroo.h
vgaarb.h
via-core.h
via-gpio.h
via.h
via_i2c.h
video_output.h
videodev2.h
virtio.h
virtio_caif.h
virtio_config.h
virtio_console.h
virtio_mmio.h
virtio_ring.h
virtio_scsi.h
vlynq.h
vm_event_item.h
vm_sockets.h
vmalloc.h
vme.h
VME: Rename vme_slot_get to avoid confusion with reference counting
2013-12-03 11:15:58 -08:00
vmpressure.h
memcg: make cgroup_event deal with mem_cgroup instead of cgroup_subsys_state
2013-11-22 18:20:43 -05:00
vmstat.h
mm/page-writeback.c: do not count anon pages as dirtyable memory
2014-01-29 16:22:39 -08:00
vmw_vmci_api.h
vmw_vmci_defs.h
vringh.h
vt.h
vt_buffer.h
vt_kern.h
vtime.h
context_tracking: Rename context_tracking_active() to context_tracking_cpu_is_enabled()
2013-12-02 20:43:15 +01:00
w1-gpio.h
drivers/w1/masters/w1-gpio.c: add strong pullup emulation
2014-01-23 16:37:04 -08:00
wait.h
sched: Fix warning on make htmldocs caused by wait.h
2014-01-22 10:25:39 +01:00
wanrouter.h
watchdog.h
wireless.h
wl12xx.h
wm97xx.h
workqueue.h
writeback.h
ww_mutex.h
xattr.h
xilinxfb.h
xz.h
yam.h
z2_battery.h
zbud.h
zconf.h
zlib.h
zorro.h
zorro/UAPI: Disintegrate include/linux/zorro*.h
2013-11-26 11:09:08 +01:00
zsmalloc.h
zsmalloc: add copyright
2014-01-30 16:56:55 -08:00
zutil.h