mirror-linux/include/linux
Jan Kara f9a61eb4e2 mbcache2: reimplement mbcache
Original mbcache was designed to have more features than what ext?
filesystems ended up using. It supported entry being in more hashes, it
had a home-grown rwlocking of each entry, and one cache could cache
entries from multiple filesystems. This genericity also resulted in more
complex locking, larger cache entries, and generally more code
complexity.

This is reimplementation of the mbcache functionality to exactly fit the
purpose ext? filesystems use it for. Cache entries are now considerably
smaller (7 instead of 13 longs), the code is considerably smaller as
well (414 vs 913 lines of code), and IMO also simpler. The new code is
also much more lightweight.

I have measured the speed using artificial xattr-bench benchmark, which
spawns P processes, each process sets xattr for F different files, and
the value of xattr is randomly chosen from a pool of V values. Averages
of runtimes for 5 runs for various combinations of parameters are below.
The first value in each cell is old mbache, the second value is the new
mbcache.

V=10
F\P	1		2		4		8		16		32		64
10	0.158,0.157	0.208,0.196	0.500,0.277	0.798,0.400	3.258,0.584	13.807,1.047	61.339,2.803
100	0.172,0.167	0.279,0.222	0.520,0.275	0.825,0.341	2.981,0.505	12.022,1.202	44.641,2.943
1000	0.185,0.174	0.297,0.239	0.445,0.283	0.767,0.340	2.329,0.480	6.342,1.198	16.440,3.888

V=100
F\P	1		2		4		8		16		32		64
10	0.162,0.153	0.200,0.186	0.362,0.257	0.671,0.496	1.433,0.943	3.801,1.345	7.938,2.501
100	0.153,0.160	0.221,0.199	0.404,0.264	0.945,0.379	1.556,0.485	3.761,1.156	7.901,2.484
1000	0.215,0.191	0.303,0.246	0.471,0.288	0.960,0.347	1.647,0.479	3.916,1.176	8.058,3.160

V=1000
F\P	1		2		4		8		16		32		64
10	0.151,0.129	0.210,0.163	0.326,0.245	0.685,0.521	1.284,0.859	3.087,2.251	6.451,4.801
100	0.154,0.153	0.211,0.191	0.276,0.282	0.687,0.506	1.202,0.877	3.259,1.954	8.738,2.887
1000	0.145,0.179	0.202,0.222	0.449,0.319	0.899,0.333	1.577,0.524	4.221,1.240	9.782,3.579

V=10000
F\P	1		2		4		8		16		32		64
10	0.161,0.154	0.198,0.190	0.296,0.256	0.662,0.480	1.192,0.818	2.989,2.200	6.362,4.746
100	0.176,0.174	0.236,0.203	0.326,0.255	0.696,0.511	1.183,0.855	4.205,3.444	19.510,17.760
1000	0.199,0.183	0.240,0.227	1.159,1.014	2.286,2.154	6.023,6.039	---,10.933	---,36.620

V=100000
F\P	1		2		4		8		16		32		64
10	0.171,0.162	0.204,0.198	0.285,0.230	0.692,0.500	1.225,0.881	2.990,2.243	6.379,4.771
100	0.151,0.171	0.220,0.210	0.295,0.255	0.720,0.518	1.226,0.844	3.423,2.831	19.234,17.544
1000	0.192,0.189	0.249,0.225	1.162,1.043	2.257,2.093	5.853,4.997	---,10.399	---,32.198

We see that the new code is faster in pretty much all the cases and
starting from 4 processes there are significant gains with the new code
resulting in upto 20-times shorter runtimes. Also for large numbers of
cached entries all values for the old code could not be measured as the
kernel started hitting softlockups and died before the test completed.

Signed-off-by: Jan Kara <jack@suse.cz>
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
2016-02-22 11:49:09 -05:00
..
amba
bcma
byteorder
can
ceph libceph: fix ceph_msg_revoke() 2016-01-21 19:36:08 +01:00
clk ARM: SoC multiplatform code changes for v4.5 2016-01-20 18:03:56 -08:00
crush
decompress
dma
extcon
fpga
fsl
gpio gpio: generic: make bgpio_pdata always visible 2016-01-13 16:00:32 +01:00
hsi
i2c
iio
input
irqchip
isdn
lockd
mfd RTC for 4.5 2016-01-18 12:10:45 -08:00
mlx4 Initial roundup of 4.5 merge window patches 2016-01-23 18:45:06 -08:00
mlx5 Initial roundup of 4.5 merge window patches 2016-01-23 18:45:06 -08:00
mmc
mtd
netfilter
netfilter_arp
netfilter_bridge
netfilter_ipv4
netfilter_ipv6
perf
phy
pinctrl
platform_data Merge branch 'upstream' of git://git.linux-mips.org/pub/scm/ralf/upstream-linus 2016-01-24 12:50:56 -08:00
power
qed
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
soc ARM: SoC driver updates for v4.5 2016-01-20 18:42:30 -08:00
spi
ssb
sunrpc Initial roundup of 4.5 merge window patches 2016-01-23 18:45:06 -08: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
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
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 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
atmel_tc.h
atomic.h
attribute_container.h
audit.h Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jmorris/linux-security 2016-01-17 19:13:15 -08:00
auto_dev-ioctl.h
auto_fs.h
auxvec.h
average.h
b1pcmcia.h
backing-dev-defs.h
backing-dev.h
backlight.h
badblocks.h
balloon_compaction.h
bcd.h
bch.h
bcm47xx_nvram.h
bcm47xx_wdt.h
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
bit_spinlock.h
bitmap.h
bitops.h
bitrev.h
blk-cgroup.h
blk-mq.h
blk_types.h
blkdev.h Merge branch 'for-4.5/nvme' of git://git.kernel.dk/linux-block 2016-01-21 19:58:02 -08:00
blkpg.h
blktrace_api.h
blockgroup_lock.h
bma150.h
bootmem.h
bottom_half.h
bpf.h
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
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
circ_buf.h
cleancache.h include/linux/cleancache.h: Clean up code 2016-01-27 09:10:29 -05:00
clk-provider.h
clk.h
clkdev.h
clock_cooling.h
clockchips.h
clocksource.h
cm4000_cs.h
cma.h
cmdline-parser.h
cn_proc.h
cnt32_to_63.h
coda.h
coda_psdev.h
compaction.h
compat.h
compiler-clang.h
compiler-gcc.h
compiler-intel.h
compiler.h
completion.h
component.h
concap.h
configfs.h Merge branch 'for-next' of git://git.kernel.org/pub/scm/linux/kernel/git/nab/target-pending 2016-01-20 17:20:53 -08: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.h
count_zeros.h
cper.h
cpu.h
cpu_cooling.h
cpu_pm.h
cpu_rmap.h
cpufeature.h
cpufreq-dt.h
cpufreq.h
cpuidle.h
cpumask.h kernel/cpu.c: make set_cpu_* static inlines 2016-01-20 17:09:18 -08:00
cpuset.h
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
crypto.h
cryptohash.h
cs5535.h
ctype.h
cuda.h
cyclades.h
davinci_emac.h
dax.h dax: add support for fsync/sync 2016-01-22 17:02:18 -08:00
dca.h
dcache.h include/linux/dcache.h: remove semicolons from HASH_LEN_DECLARE 2016-01-14 16:00:49 -08:00
dccp.h
dcookies.h
debug_locks.h
debugfs.h
debugobjects.h
delay.h
delayacct.h
delayed_call.h
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
device.h
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-mapping: always provide the dma_map_ops based implementation 2016-01-20 17:09:18 -08:00
dma-buf.h
dma-contiguous.h
dma-debug.h
dma-direction.h
dma-iommu.h
dma-mapping.h dma-mapping: use offset_in_page macro 2016-01-20 17:09:18 -08:00
dma_remapping.h
dmaengine.h
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
dqblk_v1.h
dqblk_v2.h
drbd.h
drbd_genl.h
drbd_genl_api.h
drbd_limits.h
ds1286.h
ds2782_battery.h
ds17287rtc.h
dtlk.h
dw_apb_timer.h
dynamic_debug.h
dynamic_queue_limits.h
earlycpio.h
ecryptfs.h
edac.h
edd.h
edma.h
eeprom_93cx6.h
eeprom_93xx46.h
efi-bgrt.h
efi.h
efs_vh.h
eisa.h
elevator.h
elf-fdpic.h
elf-randomize.h
elf.h
elfcore-compat.h
elfcore.h
elfnote.h
enclosure.h
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
ethtool.h
eventfd.h
eventpoll.h
evm.h
export.h
exportfs.h
ext2_fs.h
extcon.h
f2fs_fs.h
f75375s.h
falloc.h
fanotify.h
fault-inject.h
fb.h
fcdevice.h
fcntl.h
fd.h
fddidevice.h
fdtable.h
fec.h
fence.h
file.h
filter.h
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 Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs 2016-01-23 12:24:56 -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 This includes three minor fixes, mostly due to cut-and-paste issues. 2016-01-28 17:00:50 -08:00
ftrace_irq.h
futex.h
fwnode.h
gameport.h
gcd.h
genalloc.h
genetlink.h
genhd.h
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
hdlc.h
hdlcdrv.h
hdmi.h
hid-debug.h
hid-roccat.h
hid-sensor-hub.h
hid-sensor-ids.h
hid.h
hiddev.h
hidraw.h
highmem.h
highuid.h
hil.h
hil_mlc.h
hippidevice.h
host1x.h
hp_sdc.h
hpet.h
hrtimer.h hrtimer: Handle remaining time proper for TIME_LOW_RES 2016-01-17 11:13:55 +01:00
htcpld.h
htirq.h
huge_mm.h thp: change pmd_trans_huge_lock() interface to return ptl 2016-01-21 17:20:51 -08: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
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
ieee802154.h
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
if_phonet.h
if_pppol2tp.h
if_pppox.h
if_team.h
if_tun.h
if_tunnel.h
if_vlan.h
igmp.h
ihex.h
ima.h
in.h
in6.h
inet.h
inet_diag.h
inet_lro.h
inetdevice.h
init.h
init_ohci1394_dma.h
init_task.h
initrd.h
inotify.h
input-polldev.h
input.h
integrity.h
intel-iommu.h
intel-svm.h
intel_pmic_gpio.h
interrupt.h Initial roundup of 4.5 merge window patches 2016-01-23 18:45:06 -08: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 lib/iomap_copy.c: add __ioread32_copy() 2016-01-20 17:09:18 -08:00
ioc3.h
ioc4.h
iocontext.h
iommu-common.h
iommu-helper.h
iommu.h iommu: Update struct iommu_ops comments 2016-01-29 12:34:29 +01:00
iopoll.h
ioport.h
ioprio.h
iova.h
ip.h
ipack.h
ipc.h
ipc_namespace.h
ipmi-fru.h
ipmi.h
ipmi_smi.h
ipv6.h
ipv6_route.h
irq.h
irq_cpustat.h
irq_poll.h
irq_work.h
irqbypass.h
irqchip.h
irqdesc.h
irqdomain.h irqdomain: Allow domain lookup with DOMAIN_BUS_WIRED token 2016-01-26 16:00:14 +01:00
irqflags.h
irqhandler.h
irqnr.h
irqreturn.h
isa.h
isapnp.h
iscsi_boot_sysfs.h
iscsi_ibft.h
isdn.h
isdn_divertif.h
isdn_ppp.h
isdnif.h
isicom.h
jbd2.h
jhash.h
jiffies.h
journal-head.h
joystick.h
jump_label.h
jump_label_ratelimit.h
jz4740-adc.h
jz4780-nemc.h
kallsyms.h
kasan.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: remove new_valid_dev() 2016-01-16 11:17:23 -08:00
kern_levels.h
kernel-page-flags.h
kernel.h include/linux/kernel.h: change abs() macro so it uses consistent return type 2016-01-16 11:17:22 -08:00
kernel_stat.h
kernelcapi.h
kernfs.h
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
keyboard.h
kfifo.h
kgdb.h
khugepaged.h
klist.h
kmemcheck.h
kmemleak.h
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: rename pfn_t to kvm_pfn_t 2016-01-15 17:56:32 -08: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
lcd.h
lcm.h
led-class-flash.h
led-lm3530.h
leds-bd2802.h
leds-lp3944.h
leds-pca9532.h
leds-regulator.h
leds-tca6507.h
leds.h
leds_pwm.h
lglock.h
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
libps2.h
license.h
lightnvm.h lightnvm: ensure that nvm_dev_ops can be used without CONFIG_NVM 2016-01-13 13:04:11 -07:00
linkage.h
linux_logo.h
lis3lv02d.h
list.h mm, dax, pmem: introduce {get|put}_dev_pagemap() for dax-gup 2016-01-15 17:56:32 -08:00
list_bl.h
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
llc.h
llist.h
lockdep.h
lockref.h
log2.h
lp.h
lru_cache.h
lsm_audit.h
lsm_hooks.h
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
mailbox_client.h
mailbox_controller.h
maple.h
marvell_phy.h
math64.h
max17040_battery.h
mbcache.h
mbcache2.h mbcache2: reimplement mbcache 2016-02-22 11:49:09 -05:00
mbus.h
mc6821.h
mc146818rtc.h
mcb.h
mdio-bitbang.h
mdio-mux.h
mdio.h
mei_cl_bus.h
memblock.h memblock: fix section mismatch 2016-01-15 17:56:32 -08:00
memcontrol.h mm: memcontrol: add "sock" to cgroup2 memory.stat 2016-01-20 17:09:18 -08:00
memory.h
memory_hotplug.h x86, mm: introduce vmem_altmap to augment vmemmap_populate() 2016-01-15 17:56:32 -08: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
migrate_mode.h
mii.h
miscdevice.h
mm-arch-hooks.h
mm.h mm/mlock.c: change can_do_mlock return value type to boolean 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 mm, dax, pmem: introduce {get|put}_dev_pagemap() for dax-gup 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
mmzone.h mm: page_alloc: generalize the dirty balance reserve 2016-01-14 16:00:49 -08:00
mnt_namespace.h
mod_devicetable.h
module.h
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 PCI changes for the v4.5 merge window: 2016-01-21 11:52:16 -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
nd.h
net.h
netdev_features.h
netdevice.h net: Fix typo in netdev_intersect_features 2016-01-11 23:28:44 -05:00
netfilter.h
netfilter_bridge.h
netfilter_defs.h
netfilter_ingress.h
netfilter_ipv4.h
netfilter_ipv6.h
netlink.h
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_iostat.h
nfs_page.h
nfs_xdr.h
nfsacl.h
nilfs2_fs.h
nl802154.h
nls.h
nmi.h
node.h
nodemask.h
notifier.h
ns_common.h
nsc_gpio.h
nsproxy.h
ntb.h
ntb_transport.h
nubus.h
numa.h
nvme.h
nvmem-consumer.h
nvmem-provider.h
nvram.h
of.h
of_address.h
of_device.h
of_dma.h
of_fdt.h
of_gpio.h
of_graph.h
of_iommu.h
of_irq.h
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
omap-dmaengine.h
omap-gpmc.h
omap-iommu.h
omap-mailbox.h
omapfb.h
once.h
oom.h
openvswitch.h
oprofile.h
osq_lock.h
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
page_counter.h
page_ext.h
page_idle.h
page_owner.h
pageblock-flags.h
pagemap.h mm: add find_get_entries_tag() 2016-01-22 17:02:18 -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-aspm.h
pci-ats.h
pci-dma.h
pci.h PCI changes for the v4.5 merge window: 2016-01-21 11:52:16 -08:00
pci_hotplug.h
pci_ids.h PCI: Add Netronome NFP4000 PF device ID 2016-01-15 17:29:37 -06: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: Synchronously clean up child events 2016-01-29 08:35:35 +01:00
perf_regs.h
personality.h
pfn.h mm, dax, pmem: introduce pfn_t 2016-01-15 17:56:32 -08:00
pfn_t.h mm, dax: convert vmf_insert_pfn_pmd() to pfn_t 2016-01-15 17:56:32 -08:00
phonet.h
phy.h
phy_fixed.h
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
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
pm2301_charger.h
pm_clock.h
pm_domain.h
pm_opp.h
pm_qos.h
pm_runtime.h
pm_wakeirq.h
pm_wakeup.h
pmem.h pmem: add wb_cache_pmem() to the PMEM API 2016-01-22 17:02:18 -08:00
pmu.h
pnfs_osd_xdr.h
pnp.h
poison.h include/linux/poison.h: use POISON_POINTER_DELTA for poison pointers 2016-01-16 11:17:22 -08:00
poll.h
posix-clock.h
posix-timers.h
posix_acl.h
posix_acl_xattr.h
power_supply.h
powercap.h
ppp-comp.h
ppp_channel.h
ppp_defs.h
pps-gpio.h
pps_kernel.h
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
profile.h
projid.h
property.h
proportions.h
psci.h
pstore.h
pstore_ram.h
pti.h
ptp_classify.h
ptp_clock_kernel.h
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
pxa168_eth.h
qcom_scm.h
qnx6_fs.h
quicklist.h
quota.h
quotaops.h
radix-tree.h dax: support dirty DAX entries in radix tree 2016-01-22 17:02:18 -08:00
raid_class.h
ramfs.h
random.h
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
rculist_bl.h
rculist_nulls.h
rcupdate.h
rcutiny.h
rcutree.h
reboot.h
reciprocal_div.h
regmap.h
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
ring_buffer.h
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
rpmsg.h
rslib.h
rtc-ds2404.h
rtc-v3020.h
rtc.h
rtmutex.h
rtnetlink.h
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 branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs 2016-01-22 10:24:03 -08:00
sched_clock.h
scif.h
scpi_protocol.h
screen_info.h
sctp.h
scx200.h
scx200_gpio.h
sdb.h
sdla.h
seccomp.h
securebits.h
security.h
selection.h
selinux.h
sem.h
semaphore.h
seq_buf.h
seq_file.h
seq_file_net.h
seqlock.h
seqno-fence.h
serial.h
serial_8250.h
serial_bcm63xx.h
serial_core.h
serial_max3100.h
serial_pnx8xxx.h
serial_s3c.h
serial_sci.h
serio.h
sfi.h
sfi_acpi.h
sh_clk.h
sh_dma.h
sh_eth.h
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 net: preserve IP control block during GSO segmentation 2016-01-15 14:35:24 -05:00
slab.h mm: memcontrol: move kmem accounting code to CONFIG_MEMCG 2016-01-20 17:09:18 -08:00
slab_def.h mm: memcontrol: move kmem accounting code to CONFIG_MEMCG 2016-01-20 17:09:18 -08:00
slub_def.h mm: memcontrol: move kmem accounting code to CONFIG_MEMCG 2016-01-20 17:09:18 -08:00
sm501-regs.h
sm501.h
smc91x.h
smc911x.h
smp.h
smpboot.h
smsc911x.h
smscphy.h
sock_diag.h
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
srcu.h
ssbi.h
stackprotector.h
stacktrace.h
start_kernel.h
stat.h
statfs.h
static_key.h
stddef.h
ste_modem_shm.h
stm.h
stmmac.h
stmp3xxx_rtc_wdt.h
stmp_device.h
stop_machine.h
string.h
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
swap.h mm: free swap cache aggressively if memcg swap is full 2016-01-20 17:09:18 -08: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
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
textsearch.h
textsearch_fsm.h
tfrc.h
thermal.h
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 time: nohz: Expose tick_nohz_enabled 2016-01-15 22:34:39 +01:00
tifm.h
timb_dma.h
timb_gpio.h
time.h
time64.h
timecounter.h
timekeeper_internal.h
timekeeping.h
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
trace_seq.h
tracefs.h
tracehook.h
tracepoint-defs.h
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: Wait interruptibly for tty lock on reopen 2016-01-26 23:17:54 -08:00
tty_driver.h
tty_flip.h
tty_ldisc.h
typecheck.h
types.h
u64_stats_sync.h
uaccess.h
ucb1400.h
ucs2_string.h
udp.h
uidgid.h
uinput.h
uio.h
uio_driver.h
uprobes.h
usb.h
usb_usual.h
usbdevice_fs.h
user-return-notifier.h
user.h
user_namespace.h
userfaultfd_k.h
util_macros.h
uts.h
utsname.h
uuid.h
uwb.h
verify_pefile.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
videodev2.h
virtio.h
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_ring: use virt_store_mb 2016-01-12 20:47:02 +02:00
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
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
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: Drop pointer to watchdog device from struct watchdog_device 2016-01-11 21:53:59 +01:00
wireless.h
wkup_m3_ipc.h
wl12xx.h
wm97xx.h
workqueue.h
writeback.h
ww_mutex.h
xattr.h
xz.h
yam.h
z2_battery.h
zbud.h
zconf.h
zlib.h
zorro.h
zpool.h
zsmalloc.h
zutil.h