Jens Axboe
320ae51fee
blk-mq: new multi-queue block IO queueing mechanism
...
Linux currently has two models for block devices:
- The classic request_fn based approach, where drivers use struct
request units for IO. The block layer provides various helper
functionalities to let drivers share code, things like tag
management, timeout handling, queueing, etc.
- The "stacked" approach, where a driver squeezes in between the
block layer and IO submitter. Since this bypasses the IO stack,
driver generally have to manage everything themselves.
With drivers being written for new high IOPS devices, the classic
request_fn based driver doesn't work well enough. The design dates
back to when both SMP and high IOPS was rare. It has problems with
scaling to bigger machines, and runs into scaling issues even on
smaller machines when you have IOPS in the hundreds of thousands
per device.
The stacked approach is then most often selected as the model
for the driver. But this means that everybody has to re-invent
everything, and along with that we get all the problems again
that the shared approach solved.
This commit introduces blk-mq, block multi queue support. The
design is centered around per-cpu queues for queueing IO, which
then funnel down into x number of hardware submission queues.
We might have a 1:1 mapping between the two, or it might be
an N:M mapping. That all depends on what the hardware supports.
blk-mq provides various helper functions, which include:
- Scalable support for request tagging. Most devices need to
be able to uniquely identify a request both in the driver and
to the hardware. The tagging uses per-cpu caches for freed
tags, to enable cache hot reuse.
- Timeout handling without tracking request on a per-device
basis. Basically the driver should be able to get a notification,
if a request happens to fail.
- Optional support for non 1:1 mappings between issue and
submission queues. blk-mq can redirect IO completions to the
desired location.
- Support for per-request payloads. Drivers almost always need
to associate a request structure with some driver private
command structure. Drivers can tell blk-mq this at init time,
and then any request handed to the driver will have the
required size of memory associated with it.
- Support for merging of IO, and plugging. The stacked model
gets neither of these. Even for high IOPS devices, merging
sequential IO reduces per-command overhead and thus
increases bandwidth.
For now, this is provided as a potential 3rd queueing model, with
the hope being that, as it matures, it can replace both the classic
and stacked model. That would get us back to having just 1 real
model for block devices, leaving the stacked approach to dm/md
devices (as it was originally intended).
Contributions in this patch from the following people:
Shaohua Li <shli@fusionio.com>
Alexander Gordeev <agordeev@redhat.com>
Christoph Hellwig <hch@infradead.org>
Mike Christie <michaelc@cs.wisc.edu>
Matias Bjorling <m@bjorling.me>
Jeff Moyer <jmoyer@redhat.com>
Acked-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Jens Axboe <axboe@kernel.dk>
2013-10-25 11:56:00 +01:00
..
amba
dmaengine: PL08x: Add support for PL080S variant
2013-09-02 11:49:56 +05:30
bcma
bcma: make bcma_core_pci_{up,down}() callable from atomic context
2013-09-26 14:02:33 -04:00
byteorder
can
can: mcp251x: Eliminate irq_flags from driver platform_data
2013-08-21 09:28:29 +02:00
ceph
libceph: add function to ensure notifies are complete
2013-09-09 11:15:49 -07:00
clk
crush
decompress
dma
dma: mmp_pdma: add filter function
2013-08-14 13:55:15 +05:30
extcon
fsl /bestcomm
dma: mxs-dma: remove code left from generic DMA binding conversion
2013-08-19 14:20:21 +05:30
hsi
i2c
ARM: SoC cleanups for 3.12
2013-09-06 13:21:16 -07:00
iio
iio: trigger: implement devm_iio_trigger_alloc/devm_iio_triger_free
2013-08-17 19:34:52 +01:00
input
irqchip
ARM: SoC late changes for v3.12
2013-09-09 16:35:29 -07:00
isdn
lockd
mfd
MMC highlights for 3.12:
2013-09-10 13:33:09 -07:00
mlx4
Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next
2013-09-05 14:54:29 -07:00
mlx5
net/mlx5_core: Support MANAGE_PAGES and QUERY_PAGES firmware command changes
2013-08-15 15:42:57 -07:00
mmc
mmc: sdhci: get voltage from sdhc host
2013-08-26 11:32:07 -04:00
mtd
mtd: add a new ecc_step_size field to mtd_info{}
2013-08-30 21:37:01 +01:00
netfilter
netfilter: ipset: Consistent userspace testing with nomatch flag
2013-09-16 20:35:55 +02:00
netfilter_arp
netfilter_bridge
netfilter_ipv4
netfilter_ipv6
nfsd
pinctrl
pinctrl: Pass all configs to driver on pin_config_set()
2013-08-28 13:34:41 +02:00
platform_data
Merge branch 'for-next' of git://git.kernel.org/pub/scm/linux/kernel/git/cooloney/linux-leds
2013-09-12 11:35:33 -07:00
power
power: Add twl4030_madc battery driver.
2013-08-30 17:34:52 -07:00
raid
md update for v3.12
2013-09-10 13:03:41 -07:00
regulator
regulator: fix fatal kernel-doc error
2013-09-17 11:49:25 +01:00
rtc
sched
spi
MMC highlights for 3.12:
2013-09-10 13:33:09 -07:00
ssb
sunrpc
Merge branch 'nfsd-next' of git://linux-nfs.org/~bfields/linux
2013-09-10 20:04:59 -07:00
tc_act
unaligned
usb
USBNET: fix handling padding packet
2013-09-28 15:42:49 -04:00
uwb
wimax
8250_pci.h
a.out.h
acct.h
acpi.h
acpi_dma.h
acpi_gpio.h
acpi_io.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
async.h
async_tx.h
ata.h
libata: Add support for SEND/RECEIVE FPDMA QUEUED
2013-08-25 09:39:12 -04:00
ata_platform.h
atalk.h
ath9k_platform.h
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
auto_dev-ioctl.h
auto_fs.h
auxvec.h
average.h
b1pcmcia.h
backing-dev.h
mm/page-writeback.c: add strictlimit feature
2013-09-11 15:58:04 -07:00
backlight.h
balloon_compaction.h
mm: avoid reinserting isolated balloon pages into LRU lists
2013-09-30 14:31:02 -07:00
basic_mmio_gpio.h
bcd.h
bch.h
bcm47xx_wdt.h
bfin_mac.h
binfmts.h
exec: kill "int depth" in search_binary_handler()
2013-09-11 15:59:04 -07:00
bio.h
blk-mq: new multi-queue block IO queueing mechanism
2013-10-25 11:56:00 +01:00
bit_spinlock.h
bitmap.h
bitops.h
bitrev.h
blk-iopoll.h
blk-mq.h
blk-mq: new multi-queue block IO queueing mechanism
2013-10-25 11:56:00 +01:00
blk_types.h
blk-mq: new multi-queue block IO queueing mechanism
2013-10-25 11:56:00 +01:00
blkdev.h
blk-mq: new multi-queue block IO queueing mechanism
2013-10-25 11:56:00 +01:00
blktrace_api.h
blockgroup_lock.h
bma150.h
bootmem.h
bottom_half.h
brcmphy.h
bsearch.h
bsg-lib.h
bsg.h
btree-128.h
btree-type.h
btree.h
btrfs.h
buffer_head.h
direct-io: Implement generic deferred AIO completions
2013-09-04 09:23:46 -04:00
bug.h
c2port.h
cache.h
capability.h
userns: Kill nsown_capable it makes the wrong thing easy
2013-08-30 23:44:11 -07:00
cb710.h
cciss_ioctl.h
cdev.h
cdrom.h
cfag12864b.h
cgroup.h
cgroup: implement CFTYPE_NO_PREFIX
2013-08-26 18:40:56 -04:00
cgroup_subsys.h
circ_buf.h
cleancache.h
clk-private.h
clk: add support for clock reparent on set_rate
2013-08-19 12:27:17 -07:00
clk-provider.h
clk: wrap I/O access for improved portability
2013-08-27 17:50:38 -07:00
clk.h
clkdev.h
clksrc-dbx500-prcmu.h
clockchips.h
clocksource.h
cm4000_cs.h
cmdline-parser.h
block: support embedded device command line partition
2013-09-11 15:56:57 -07:00
cn_proc.h
cnt32_to_63.h
coda.h
coda_psdev.h
com20020.h
compaction.h
compat.h
syscalls.h: add forward declarations for inplace syscall wrappers
2013-09-11 15:58:25 -07:00
compiler-gcc.h
compiler-gcc3.h
compiler-gcc4.h
compiler/gcc4: Add quirk for 'asm goto' miscompilation bug
2013-10-11 07:39:14 +02:00
compiler-intel.h
compiler.h
completion.h
concap.h
configfs.h
connector.h
console.h
console_struct.h
consolemap.h
context_tracking.h
vtime: Optimize full dynticks accounting off case with static keys
2013-08-14 17:14:54 +02:00
context_tracking_state.h
context_tracking: Split low level state headers
2013-08-14 17:14:51 +02:00
cordic.h
coredump.h
cper.h
cpu.h
Merge branch 'pm-cpufreq'
2013-08-27 01:44:40 +02:00
cpu_cooling.h
cpu_pm.h
cpu_rmap.h
Remove GENERIC_HARDIRQ config option
2013-09-13 15:09:52 +02:00
cpufreq.h
Revert "cpufreq: make sure frequency transitions are serialized"
2013-09-10 02:54:50 +02:00
cpuidle.h
cpumask.h
cpuset.h
cramfs_fs.h
cramfs_fs_sb.h
crash_dump.h
vmcore: introduce remap_oldmem_pfn_range()
2013-09-11 15:59:10 -07:00
crc-ccitt.h
crc-itu-t.h
crc-t10dif.h
Reinstate "crypto: crct10dif - Wrap crc_t10dif function all to use crypto transform framework"
2013-09-07 12:56:26 +10:00
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
super: fix calculation of shrinkable objects for small numbers
2013-09-10 18:56:29 -04:00
dccp.h
dcookies.h
debug_locks.h
debugfs.h
debugfs: provide debugfs_create_x64() when disabled
2013-08-27 22:09:12 -07:00
debugobjects.h
debugobjects: Make debug_object_activate() return status
2013-08-18 17:39:55 -07:00
delay.h
delayacct.h
devfreq.h
device-mapper.h
dm mpath: disable WRITE SAME if it fails
2013-09-20 10:36:34 -04:00
device.h
Merge branch 'for-v3.12' of git://git.linaro.org/people/mszyprowski/linux-dma-mapping
2013-09-09 10:26:33 -07:00
device_cgroup.h
devpts_fs.h
digsig.h
dio.h
dirent.h
dlm.h
dlm_plock.h
dm-dirty-log.h
dm-io.h
dm-kcopyd.h
dm-region-hash.h
dm9000.h
dma-attrs.h
dma-buf.h
dma-contiguous.h
drivers: dma-contiguous: clean source code and prepare for device tree
2013-08-27 09:18:29 +02:00
dma-debug.h
dma-direction.h
dma-mapping.h
drivers:net: Convert dma_alloc_coherent(...__GFP_ZERO) to dma_zalloc_coherent
2013-08-29 21:55:23 -04:00
dma_remapping.h
dmaengine.h
Merge branch 'for-linus' of git://git.infradead.org/users/vkoul/slave-dma
2013-09-10 13:37:36 -07:00
dmapool.h
dmar.h
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
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.h
elfcore-compat.h
elfcore.h
elfnote.h
enclosure.h
err.h
errno.h
errqueue.h
etherdevice.h
net: etherdevice: add address inherit helper
2013-09-03 20:57:49 -04:00
ethtool.h
eventfd.h
Kill indirect include of file.h from eventfd.h, use fdget() in cgroup.c
2013-09-07 19:54:57 -04:00
eventpoll.h
evm.h
export.h
exportfs.h
ext2_fs.h
extcon.h
f2fs_fs.h
f2fs: support the inline xattrs
2013-08-26 20:15:23 +09:00
f75375s.h
falloc.h
fanotify.h
fault-inject.h
fb.h
fcdevice.h
fcntl.h
fd.h
fddidevice.h
fdtable.h
fec.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
a trivial writeback fix
2013-09-13 23:06:40 -04:00
fs_enet_pd.h
fs_enet: cleanup clock API use
2013-08-22 22:13:54 -07:00
fs_stack.h
fs_struct.h
vfs: move get_fs_root_and_pwd() to single caller
2013-09-12 10:12:47 -07:00
fs_uart_pd.h
fscache-cache.h
FS-Cache: Add interface to check consistency of a cached object
2013-09-06 09:17:30 +01:00
fscache.h
fscache: Netfs function for cleanup post readpages
2013-09-06 09:17:30 +01:00
fsl-diu-fb.h
fsl_devices.h
fsl_hypervisor.h
fsnotify.h
fsnotify_backend.h
ftrace.h
ftrace_event.h
Merge branch 'rcu/next' of git://git.kernel.org/pub/scm/linux/kernel/git/paulmck/linux-rcu into core/rcu
2013-09-03 07:41:11 +02:00
ftrace_irq.h
futex.h
gameport.h
gcd.h
genalloc.h
lib/genalloc.c: fix overflow of ending address of memory chunk
2013-09-11 15:57:35 -07:00
generic_acl.h
genetlink.h
genhd.h
genl_magic_func.h
genl_magic_struct.h
getcpu.h
gfp.h
gpio-fan.h
gpio-pxa.h
gpio.h
gpio_keys.h
gpio_mouse.h
gsmmux.h
hardirq.h
Remove GENERIC_HARDIRQ config option
2013-09-13 15:09:52 +02:00
hash.h
hashtable.h
hdlc.h
hdlcdrv.h
hdmi.h
video/hdmi: Rename HDMI_IDENTIFIER to HDMI_IEEE_OUI
2013-08-30 08:42:01 +10:00
hid-debug.h
hid-roccat.h
hid-sensor-hub.h
HID: hid-sensor-hub: fix style of comments
2013-08-26 13:46:11 +02:00
hid-sensor-ids.h
HID: hid-sensor-hub: fix style of comments
2013-08-26 13:46:11 +02:00
hid.h
HID: provide a helper for validating hid reports
2013-09-13 15:11:21 +02:00
hiddev.h
hidraw.h
HID: hidraw: Add spinlock in struct hidraw to protect list
2013-08-26 21:40:24 +02:00
highmem.h
highuid.h
hil.h
hil_mlc.h
hippidevice.h
hp_sdc.h
hpet.h
hrtimer.h
htcpld.h
htirq.h
huge_mm.h
thp: consolidate code between handle_mm_fault() and do_huge_pmd_anonymous_page()
2013-09-12 15:38:03 -07:00
hugetlb.h
mm: migrate: check movability of hugepage in unmap_and_move_huge_page()
2013-09-11 15:57:49 -07:00
hugetlb_cgroup.h
hugetlb_inline.h
hw_breakpoint.h
hw_random.h
hwmon-sysfs.h
hwmon-vid.h
hwmon.h
hwspinlock.h
hyperv.h
Drivers: hv: util: Correctly support ws2008R2 and earlier
2013-09-26 14:20:21 -07:00
i2c-algo-bit.h
i2c-algo-pca.h
i2c-algo-pcf.h
i2c-dev.h
i2c-gpio.h
i2c-mux-gpio.h
i2c-mux-pinctrl.h
i2c-mux.h
i2c-ocores.h
i2c-omap.h
i2c-pca-platform.h
i2c-pnx.h
i2c-pxa.h
i2c-smbus.h
i2c-xiic.h
i2c.h
i2c: move ACPI helpers into the core
2013-08-23 10:22:29 +02:00
i2o.h
i7300_idle.h
i8042.h
Input: add driver for slidebar on Lenovo IdeaPad laptops
2013-08-26 09:30:03 -07:00
i8253.h
i82593.h
icmp.h
icmpv6.h
ide.h
idr.h
ieee80211.h
Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-next into for-davem
2013-08-29 14:08:24 -04: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
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
ipv4: expose IPV4_DEVCONF
2013-08-22 20:30:15 -07:00
init.h
initmpfs: move rootfs code from fs/ramfs/ to init/
2013-09-11 15:59:37 -07:00
init_ohci1394_dma.h
init_task.h
initrd.h
inotify.h
input-polldev.h
input.h
integrity.h
intel-iommu.h
x86/iommu: correct ICS register offset
2013-09-24 13:04:07 +02:00
intel_mid_dma.h
intel_pmic_gpio.h
interrupt.h
Remove GENERIC_HARDIRQ config option
2013-09-13 15:09:52 +02:00
interval_tree.h
interval_tree_generic.h
io-mapping.h
io.h
ioc3.h
ioc4.h
iocontext.h
iommu-helper.h
iommu.h
iommu/fsl: Add additional iommu attributes required by the PAMU driver.
2013-08-14 11:38:34 +02:00
ioport.h
ioprio.h
iova.h
ip.h
ipack.h
ipc.h
ipc_namespace.h
ipc: rename ids->rw_mutex
2013-09-11 15:59:42 -07:00
ipmi-fru.h
ipmi.h
ipmi_smi.h
ipv6.h
ipv6: drop fragmented ndisc packets by default (RFC 6980)
2013-08-29 15:32:08 -04:00
ipv6_route.h
irq.h
Remove GENERIC_HARDIRQ config option
2013-09-13 15:09:52 +02:00
irq_cpustat.h
irq_work.h
irqchip.h
irqdesc.h
Remove GENERIC_HARDIRQ config option
2013-09-13 15:09:52 +02:00
irqdomain.h
irqflags.h
irqnr.h
Remove GENERIC_HARDIRQ config option
2013-09-13 15:09:52 +02:00
irqreturn.h
isa.h
isapnp.h
iscsi_boot_sysfs.h
iscsi_ibft.h
isdn.h
isdn_divertif.h
isdn_ppp.h
isdnif.h
isicom.h
jbd.h
jbd2.h
jbd_common.h
jhash.h
jiffies.h
jiffies: Avoid undefined behavior from signed overflow
2013-08-20 11:46:54 -07:00
journal-head.h
joystick.h
jump_label.h
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
lib: introduce upper case hex ascii helpers
2013-09-20 15:38:26 -04:00
kernel_stat.h
Remove GENERIC_HARDIRQ config option
2013-09-13 15:09:52 +02:00
kernelcapi.h
kexec.h
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
sysfs: Restrict mounting sysfs
2013-08-28 21:35:14 -07:00
kprobes.h
kprobes: allow to specify custom allocator for insn caches
2013-09-11 15:58:52 -07:00
kref.h
ks0108.h
ks8842.h
ks8851_mll.h
ksm.h
kthread.h
ktime.h
kvm_host.h
KVM: mmu: allow page tables to be in read-only slots
2013-09-17 12:52:31 +03: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: Add support for queued DSM TRIM
2013-08-25 09:39:12 -04:00
libfdt.h
libfdt_env.h
libps2.h
license.h
linkage.h
linux_logo.h
lis3lv02d.h
list.h
list_bl.h
list_lru.h
list_lru: dynamically adjust node arrays
2013-09-10 18:56:32 -04:00
list_nulls.h
list_sort.h
llc.h
llist.h
lockdep.h
lockref.h
lockref: add ability to mark lockrefs "dead"
2013-09-07 15:49:18 -07:00
log2.h
lp.h
lru_cache.h
lsm_audit.h
lz4.h
lz4: fix compression/decompression signedness mismatch
2013-09-11 15:59:45 -07:00
lzo.h
m48t86.h
mailbox.h
maple.h
marvell_phy.h
math64.h
math64: New separate div64_u64_rem helper
2013-08-23 09:02:14 -04:00
max17040_battery.h
mbcache.h
mbus.h
mc6821.h
mc146818rtc.h
mdio-bitbang.h
mdio-gpio.h
mdio-mux.h
mdio.h
mei_cl_bus.h
memblock.h
memblock, numa: binary search node id
2013-09-11 15:57:51 -07:00
memcontrol.h
revert "memcg, vmscan: integrate soft reclaim tighter with zone shrinking code"
2013-09-24 17:00:26 -07:00
memory.h
drivers: base: use standard device online/offline for state change
2013-08-21 11:52:20 -07:00
memory_hotplug.h
mempolicy.h
mm: migrate: remove VM_HUGETLB from vma flag check in vma_migratable()
2013-09-11 15:57:48 -07:00
mempool.h
memstick.h
mg_disk.h
micrel_phy.h
phy: micrel: Add definitions for common Micrel PHY registers
2013-08-22 23:20:54 +08:00
migrate.h
Merge git://git.kvack.org/~bcrl/aio-next
2013-09-13 10:55:58 -07:00
migrate_mode.h
mii.h
miscdevice.h
HID: uhid: allocate static minor
2013-09-26 11:03:29 +02:00
mISDNdsp.h
mISDNhw.h
mISDNif.h
mm.h
thp: consolidate code between handle_mm_fault() and do_huge_pmd_anonymous_page()
2013-09-12 15:38:03 -07:00
mm_inline.h
mm: vmscan: fix do_try_to_free_pages() livelock
2013-09-11 15:58:01 -07:00
mm_types.h
Merge git://git.kvack.org/~bcrl/aio-next
2013-09-13 10:55:58 -07:00
mman.h
mmdebug.h
mmiotrace.h
mmu_context.h
mmu_notifier.h
mmzone.h
mm: vmscan: fix do_try_to_free_pages() livelock
2013-09-11 15:58:01 -07:00
mnt_namespace.h
mod_devicetable.h
Revert "Input: introduce BTN/ABS bits for drums and guitars"
2013-09-07 09:48:41 -07:00
module.h
module: Fix mod->mkobj.kobj potentially freed too early
2013-09-03 16:35:47 +09:30
moduleloader.h
moduleparam.h
module: Add flag to allow mod params to have no arguments
2013-08-20 15:37:42 +09:30
mount.h
mpage.h
mpi.h
mroute.h
mroute6.h
msdos_fs.h
msg.h
msi.h
msm_mdp.h
mutex-debug.h
mutex.h
mutex: replace CONFIG_HAVE_ARCH_MUTEX_CPU_RELAX with simple ifdef
2013-09-28 12:46:21 +02:00
mv643xx.h
mv643xx_eth.h
mv643xx_i2c.h
mxm-wmi.h
n_r3964.h
namei.h
introduce kern_path_mountpoint()
2013-09-08 20:20:23 -04:00
nbd.h
net.h
netdev_features.h
netdevice.h
vxlan: Fix sparse warnings
2013-09-15 22:18:13 -04:00
netfilter.h
netfilter: nf_conntrack: make sequence number adjustments usuable without NAT
2013-08-28 00:26:48 +02:00
netfilter_bridge.h
netfilter_ipv4.h
netfilter_ipv6.h
netlink.h
netpoll.h
nfs.h
nfs3.h
nfs4.h
nfs_fs.h
NFS: Ensure that rmdir() waits for sillyrenames to complete
2013-09-03 15:26:29 -04:00
nfs_fs_i.h
nfs_fs_sb.h
NFSv4.1 Use MDS auth flavor for data server connection
2013-09-06 14:49:16 -04:00
nfs_idmap.h
nfs_iostat.h
nfs_page.h
nfs_xdr.h
NFSv4: Honour the 'opened' parameter in the atomic_open() filesystem method
2013-09-26 10:20:18 -04:00
nfsacl.h
nilfs2_fs.h
nl802154.h
nls.h
nmi.h
node.h
nodemask.h
notifier.h
nsc_gpio.h
nsproxy.h
Rename nsproxy.pid_ns to nsproxy.pid_ns_for_children
2013-08-27 13:52:52 -04:00
ntb.h
nubus.h
numa.h
nvme.h
NVMe: Use normal shutdown
2013-09-03 16:40:32 -04:00
nvram.h
nwpserial.h
nx842.h
of.h
Device tree core updates for v3.12
2013-09-10 13:53:52 -07:00
of_address.h
of_device.h
of/device: add helper to get cpu device node from logical cpu index
2013-08-21 10:29:51 +01:00
of_dma.h
of_fdt.h
Device tree core updates for v3.12
2013-09-10 13:53:52 -07:00
of_gpio.h
of_iommu.h
of_irq.h
of: clean-up ifdefs in of_irq.h
2013-09-24 21:12:32 -05:00
of_mdio.h
of_mtd.h
of_net.h
of: Make of_get_phy_mode() return int i.s.o. const int
2013-08-28 20:50:19 +01:00
of_pci.h
of_pdt.h
of_platform.h
of_reserved_mem.h
drivers: of: add initialization code for dma reserved memory
2013-08-27 10:53:44 +02:00
oid_registry.h
olpc-ec.h
Staging: olpc_dcon: replace some magic numbers
2013-08-15 17:22:27 -07:00
omap-dma.h
omap-iommu.h
omap-mailbox.h
omapfb.h
oom.h
openvswitch.h
opp.h
oprofile.h
oprofile: get rid of pointless forward declarations of struct super_block
2013-09-03 22:52:48 -04:00
oxu210hp.h
padata.h
page-debug-flags.h
page-flags-layout.h
page-flags.h
page-isolation.h
page_cgroup.h
pageblock-flags.h
pagemap.h
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
ARM: SoC platform changes for 3.12
2013-09-06 13:30:06 -07:00
pci_hotplug.h
Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next
2013-09-05 14:54:29 -07:00
pci_ids.h
SCSI misc on 20130915
2013-09-15 17:41:30 -04:00
pcieport_if.h
pda_power.h
percpu-defs.h
percpu: Make __verify_pcu_ptr handle per cpu pointers to arrays
2013-08-23 16:08:27 -04:00
percpu-refcount.h
percpu-rwsem.h
percpu.h
percpu_counter.h
percpu_ida.h
percpu_ida: add an API to return free tags
2013-10-25 11:56:00 +01:00
perf_event.h
perf: Fix perf_pmu_migrate_context
2013-10-04 09:58:53 +02:00
perf_regs.h
personality.h
pfn.h
phonedev.h
phonet.h
phy.h
phy_fixed.h
pid.h
pid_namespace.h
pim.h
pipe_fs_i.h
pktcdvd.h
platform_device.h
plist.h
pm.h
pm2301_charger.h
pm_clock.h
pm_domain.h
pm_qos.h
pm_runtime.h
pm_wakeup.h
pmu.h
pnfs_osd_xdr.h
pnp.h
poison.h
poll.h
posix-clock.h
posix-timers.h
posix_acl.h
posix_acl_xattr.h
power_supply.h
power_supply: Prevent suspend until power supply events are processed
2013-08-27 18:42:48 -07:00
ppp-comp.h
ppp_channel.h
ppp_defs.h
pps-gpio.h
pps_kernel.h
PPS: convert class code to use dev_groups
2013-08-19 21:22:34 -07:00
preempt.h
preempt_mask.h
hardirq: Split preempt count mask definitions
2013-08-14 17:14:52 +02:00
prefetch.h
printk.h
prio_heap.h
proc_fs.h
proc_ns.h
profile.h
projid.h
proportions.h
pstore.h
pstore: Introduce new argument 'compressed' in the read callback
2013-08-19 10:18:11 -07: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
ARM: pxa: ssp: add pxa_ssp_request_of()
2013-08-14 19:54:30 +01:00
pxa168_eth.h
qnx6_fs.h
quicklist.h
quota.h
quota: Add a new quotactl command Q_XGETQSTATV
2013-08-20 16:53:58 -05:00
quotaops.h
quota: provide interface for readding allocated space into reserved space
2013-08-17 09:32:32 -04:00
radix-tree.h
lib/radix-tree.c: make radix_tree_node_alloc() work correctly within interrupt
2013-09-11 15:59:36 -07:00
raid_class.h
ramfs.h
initmpfs: move rootfs code from fs/ramfs/ to init/
2013-09-11 15:59:37 -07:00
random.h
random: run random_int_secret_init() run after all late_initcalls
2013-09-23 06:35:06 -04:00
range.h
ratelimit.h
rational.h
rbtree.h
rbtree: add rbtree_postorder_for_each_entry_safe() helper
2013-09-11 15:59:20 -07:00
rbtree_augmented.h
rculist.h
rculist: list_first_or_null_rcu() should use list_entry_rcu()
2013-08-18 17:40:16 -07:00
rculist_bl.h
rculist_nulls.h
rcupdate.h
nohz_full: Add full-system-idle state machine
2013-08-31 14:43:50 -07:00
rcutiny.h
rcutree.h
reboot.h
reciprocal_div.h
regmap.h
regmap: Updates for v3.12
2013-09-03 10:07:40 -07:00
regset.h
relay.h
remoteproc.h
res_counter.h
memcg: rename RESOURCE_MAX to RES_COUNTER_MAX
2013-09-12 15:38:02 -07:00
reservation.h
reset-controller.h
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
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
mm: memcg: do not trap chargers with full callstack on OOM
2013-09-12 15:38:02 -07:00
sched_clock.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_file.h
seq_file_net.h
seqlock.h
seqlock: Add a new locking reader type
2013-09-12 09:25:23 -07:00
serial.h
serial_8250.h
serial_core.h
serial_max3100.h
serial_mfd.h
serial_pnx8xxx.h
serial_s3c.h
serial_sci.h
serio.h
sfi.h
sfi_acpi.h
sh_clk.h
sh_dma.h
DMA: shdma: remove private and unused defines from a global header
2013-08-27 14:25:27 +05:30
sh_eth.h
sh_eth: remove 'register_type' field from 'struct sh_eth_plat_data'
2013-08-20 17:10:41 -07:00
sh_intc.h
sh_timer.h
shdma-base.h
DMA: shdma: switch DT mode to use configuration data from a match table
2013-08-27 14:25:09 +05:30
shm.h
shmem_fs.h
shrinker.h
shrinker: Kill old ->shrink API.
2013-09-10 18:56:32 -04:00
signal.h
Introduce [compat_]save_altstack_ex() to unbreak x86 SMAP
2013-09-01 14:16:33 -07:00
signalfd.h
sirfsoc_dma.h
sizes.h
skbuff.h
skbuff: size of hole is wrong in a comment
2013-09-30 22:32:39 -07:00
slab.h
slab: Use correct GFP_DMA constant
2013-09-04 23:11:42 +03:00
slab_def.h
mm/sl[aou]b: Move kmallocXXX functions to common code
2013-09-04 20:51:33 +03:00
slub_def.h
slub: remove verify_mem_not_deleted()
2013-09-04 20:53:16 +03:00
sm501-regs.h
sm501.h
smc91x.h
smc911x.h
smp.h
watchdog: update watchdog_thresh properly
2013-09-24 17:00:25 -07:00
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
sched: fix the theoretical signal_wake_up() vs schedule() race
2013-08-13 08:19:26 -07:00
spinlock_api_smp.h
spinlock_api_up.h
spinlock_types.h
spinlock_types_up.h
spinlock_up.h
splice.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
stmmac.h
driver:net:stmmac: Disable DMA store and forward mode if platform data force_thresh_dma_mode is set.
2013-08-30 17:26:09 -04: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
mm: make lru_add_drain_all() selective
2013-09-12 15:38:02 -07:00
swapfile.h
swapops.h
mm: save soft-dirty bits on swapped pages
2013-08-13 17:57:47 -07:00
swiotlb.h
synclink.h
sys.h
sys_soc.h
syscalls.h
syscalls.h: add forward declarations for inplace syscall wrappers
2013-09-11 15:58:25 -07:00
syscore_ops.h
sysctl.h
sysfs.h
sysfs: sysfs_create_groups returns a value.
2013-08-28 09:51:41 -07: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
tc.h
tca6416_keypad.h
tcp.h
tegra-ahb.h
tegra-cpuidle.h
tegra-cpuidle: provide stub when !CONFIG_CPU_IDLE
2013-08-29 13:54:34 -07:00
tegra-powergate.h
tegra-soc.h
textsearch.h
textsearch_fsm.h
tfrc.h
thermal.h
thermal: thermal_core: allow binding with limits on bind_params
2013-09-03 09:10:24 -04:00
thread_info.h
threads.h
ti_wilink_st.h
tick.h
Merge branch 'timers/nohz-v3' of git://git.kernel.org/pub/scm/linux/kernel/git/frederic/linux-dynticks into timers/nohz
2013-08-14 17:58:56 +02: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
These patches are designed to enable improvements to /dev/random for
2013-10-10 12:31:43 -07:00
topology.h
toshiba.h
tpm.h
tpm_command.h
trace_clock.h
trace_seq.h
tracehook.h
tracepoint.h
transport_class.h
tsacct_kern.h
tty.h
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: introduce usb_device_no_sg_constraint() helper
2013-08-12 11:56:16 -07:00
usb_usual.h
usbdevice_fs.h
user-return-notifier.h
user.h
user_namespace.h
Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/ebiederm/user-namespace
2013-09-07 14:35:32 -07:00
uts.h
utsname.h
uuid.h
uwb.h
vermagic.h
vexpress.h
vfio.h
vfs.h
vga_switcheroo.h
gpu/vga_switcheroo: add driver control power feature. (v3)
2013-08-29 13:30:21 +10:00
vgaarb.h
Revert "i915: Update VGA arbiter support for newer devices"
2013-10-11 15:19:22 +10:00
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
mm: vmstats: track TLB flush stats on UP too
2013-09-11 15:57:09 -07:00
vm_sockets.h
vmalloc.h
vme.h
vmpressure.h
Merge branch 'for-3.12' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/cgroup
2013-09-03 18:25:03 -07:00
vmstat.h
mm: vmscan: fix do_try_to_free_pages() livelock
2013-09-11 15:58:01 -07:00
vmw_vmci_api.h
vmw_vmci_defs.h
vringh.h
vt.h
vt_buffer.h
vt_kern.h
vtime.h
vtime: Optimize full dynticks accounting off case with static keys
2013-08-14 17:14:54 +02:00
w1-gpio.h
wait.h
[SCSI] zfcp: fix lock imbalance by reworking request queue locking
2013-08-22 08:53:30 -07:00
wanrouter.h
watchdog.h
wireless.h
wl12xx.h
wm97xx.h
workqueue.h
writeback.h
mm/writeback: make writeback_inodes_wb static
2013-09-11 15:58:02 -07:00
ww_mutex.h
xattr.h
xilinxfb.h
xz.h
yam.h
z2_battery.h
zbud.h
zconf.h
zlib.h
zorro.h
zorro_ids.h
zutil.h