Nick Piggin
b3e19d924b
fs: scale mntget/mntput
...
The problem that this patch aims to fix is vfsmount refcounting scalability.
We need to take a reference on the vfsmount for every successful path lookup,
which often go to the same mount point.
The fundamental difficulty is that a "simple" reference count can never be made
scalable, because any time a reference is dropped, we must check whether that
was the last reference. To do that requires communication with all other CPUs
that may have taken a reference count.
We can make refcounts more scalable in a couple of ways, involving keeping
distributed counters, and checking for the global-zero condition less
frequently.
- check the global sum once every interval (this will delay zero detection
for some interval, so it's probably a showstopper for vfsmounts).
- keep a local count and only taking the global sum when local reaches 0 (this
is difficult for vfsmounts, because we can't hold preempt off for the life of
a reference, so a counter would need to be per-thread or tied strongly to a
particular CPU which requires more locking).
- keep a local difference of increments and decrements, which allows us to sum
the total difference and hence find the refcount when summing all CPUs. Then,
keep a single integer "long" refcount for slow and long lasting references,
and only take the global sum of local counters when the long refcount is 0.
This last scheme is what I implemented here. Attached mounts and process root
and working directory references are "long" references, and everything else is
a short reference.
This allows scalable vfsmount references during path walking over mounted
subtrees and unattached (lazy umounted) mounts with processes still running
in them.
This results in one fewer atomic op in the fastpath: mntget is now just a
per-CPU inc, rather than an atomic inc; and mntput just requires a spinlock
and non-atomic decrement in the common case. However code is otherwise bigger
and heavier, so single threaded performance is basically a wash.
Signed-off-by: Nick Piggin <npiggin@kernel.dk>
2011-01-07 17:50:33 +11:00
..
amba
Merge branch 'next' of git://git.kernel.org/pub/scm/linux/kernel/git/djbw/async_tx
2010-10-27 19:04:36 -07:00
byteorder
caif
can
can: mcp251x: Don't use pdata->model for chip selection anymore
2010-10-18 15:16:08 +02:00
ceph
ceph: mark user pages dirty on direct-io reads
2010-12-17 09:54:40 -08:00
crush
ceph: factor out libceph from Ceph file system
2010-10-20 15:37:28 -07:00
decompress
dvb
hdlc
i2c
Input: adp5588-keys - unify common header defines
2010-11-03 10:44:20 -07:00
input
isdn
lockd
NLM: Fix a regression in lockd
2010-11-15 20:44:26 -05:00
mfd
ASoC: Fix off by one error in WM8994 EQ register bank size
2010-12-06 12:43:02 +00:00
mlx4
Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/roland/infiniband
2010-10-26 17:54:22 -07:00
mmc
Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/cjb/mmc
2010-11-27 07:16:29 +09:00
mtd
Merge git://git.infradead.org/mtd-2.6
2010-10-30 08:31:35 -07:00
netfilter
Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next-2.6
2010-10-23 11:47:02 -07:00
netfilter_arp
netfilter_bridge
netfilter: install missing ebtables headers for userspace
2010-10-18 11:22:05 +02:00
netfilter_ipv4
netfilter_ipv6
nfsd
power
raid
regulator
regulator: Add option for machine drivers to enable the dummy regulator
2010-10-28 22:40:31 +01:00
rtc
spi
Merge branch 'next-spi' of git://git.secretlab.ca/git/linux-2.6
2010-11-01 07:50:43 -04:00
ssb
SSB: Fix nvram_get on BCM47xx platform
2010-12-16 18:11:00 +00:00
sunrpc
nfsd4: fix 4.1 connection registration race
2010-11-02 17:13:52 -04:00
tc_act
tc_ematch
unaligned
include/linux/unaligned: pack the whole struct rather than just the field
2010-12-22 19:43:34 -08:00
usb
USB: musb: blackfin: push clkin value to platform resources
2010-11-05 14:13:32 +02:00
uwb
wimax
8250_pci.h
a.out.h
ac97_codec.h
acct.h
acpi.h
acpi: fix _OSI string setup regression
2010-12-11 01:28:58 -05:00
acpi_pmtmr.h
x86: Remove stale pmtimer_64.c
2010-10-15 21:18:59 +02:00
adb.h
adfs_fs.h
aer.h
affs_hardblocks.h
agp_backend.h
agpgart.h
ahci_platform.h
aio.h
aio_abi.h
altera_jtaguart.h
altera_uart.h
altera_uart: Fix missing prototype for registering an early console
2010-10-22 10:20:08 -07:00
amifd.h
amifdreg.h
amigaffs.h
anon_inodes.h
apm-emulation.h
apm_bios.h
arcdevice.h
arcfb.h
async.h
async_tx.h
ata.h
[libata] support for > 512 byte sectors (e.g. 4K Native)
2010-10-21 20:21:03 -04:00
ata_platform.h
atalk.h
ath9k_platform.h
atm.h
atm_eni.h
atm_he.h
atm_idt77105.h
atm_nicstar.h
atm_suni.h
atm_tcp.h
atm_zatm.h
atmapi.h
atmarp.h
atmbr2684.h
atmclip.h
atmdev.h
atm: correct sysfs 'device' link creation and parent relationships
2010-12-10 15:45:05 -08:00
atmel-mci.h
atmel-pwm-bl.h
atmel-ssc.h
atmel_pdc.h
atmel_pwm.h
atmel_serial.h
atmel_tc.h
atmioc.h
atmlec.h
atmmpc.h
atmppp.h
atmsap.h
atmsvc.h
atomic.h
atomic: add atomic_inc_not_zero_hint()
2010-11-12 07:55:30 -08:00
attribute_container.h
audit.h
audit mmap
2010-10-30 08:45:43 -04:00
auto_dev-ioctl.h
auto_fs.h
auto_fs4.h
auxvec.h
ax25.h
b1lli.h
b1pcmcia.h
backing-dev.h
mm: declare some external symbols
2010-10-26 16:52:10 -07:00
backlight.h
basic_mmio_gpio.h
gpio: add driver for basic memory-mapped GPIO controllers
2010-10-27 18:03:06 -07:00
baycom.h
bcd.h
bfin_mac.h
netdev: bfin_mac: push settings to platform resources
2010-10-25 04:54:25 -04:00
bfs_fs.h
binfmts.h
exec: copy-and-paste the fixes into compat_do_execve() paths
2010-11-30 17:56:38 -08:00
bio.h
block: remove REQ_HARDBARRIER
2010-11-10 14:54:09 +01:00
bit_spinlock.h
bit_spinlock: add required includes
2011-01-07 17:50:31 +11:00
bitmap.h
bitops.h
bitrev.h
blk-iopoll.h
blk_types.h
block: remove REQ_HARDBARRIER
2010-11-10 14:54:09 +01:00
blkdev.h
block: max hardware sectors limit wrapper
2010-12-17 08:36:01 +01:00
blkpg.h
blktrace_api.h
blockgroup_lock.h
bootmem.h
bootmem: Add alloc_bootmem_align()
2010-12-13 16:11:13 -08:00
bottom_half.h
bpqether.h
brcmphy.h
bsg.h
btree-128.h
btree-type.h
btree.h
buffer_head.h
fs: kill block_prepare_write
2010-10-25 21:18:20 -04:00
bug.h
c2port.h
cache.h
can.h
capability.h
capi.h
cb710.h
cciss_defs.h
cciss_ioctl.h
cd1400.h
cdev.h
cdk.h
cdrom.h
cfag12864b.h
cgroup.h
cgroup: add clone_children control file
2010-10-27 18:03:09 -07:00
cgroup_subsys.h
cgroupstats.h
chio.h
circ_buf.h
clk.h
clockchips.h
clocksource.h
cm4000_cs.h
cn_proc.h
cnt32_to_63.h
clarify a usage constraint for cnt32_to_63()
2010-12-20 09:07:35 -08:00
coda.h
coda_cache.h
coda_fs_i.h
Coda: add spin lock to protect accesses to struct coda_inode_info.
2010-10-25 08:02:40 -07:00
coda_linux.h
fs: provide rcu-walk aware permission i_ops
2011-01-07 17:50:29 +11:00
coda_psdev.h
Coda: replace BKL with mutex
2010-10-25 08:02:40 -07:00
coff.h
com20020.h
compaction.h
compat.h
compiler-gcc.h
compiler-gcc3.h
compiler-gcc4.h
compiler-intel.h
compiler.h
completion.h
docbook: add more wait/wake/completion to device-drivers docbook
2010-10-26 17:32:41 -07:00
comstats.h
concap.h
configfs.h
connector.h
connector: remove lazy workqueue creation
2010-10-24 14:20:01 -07:00
console.h
console_struct.h
consolemap.h
const.h
coredump.h
cper.h
cpu.h
driver core: prune docs about device_interface
2010-11-10 16:57:11 -08:00
cpufreq.h
cpuidle.h
cpumask.h
cpuset.h
cramfs_fs.h
cramfs_fs_sb.h
crash_dump.h
crc-ccitt.h
crc-itu-t.h
crc-t10dif.h
crc7.h
crc16.h
crc32.h
crc32c.h
cred.h
crypto.h
cryptohash.h
cs5535.h
ctype.h
cuda.h
cyclades.h
cyclomx.h
cycx_cfm.h
cycx_drv.h
cycx_x25.h
davinci_emac.h
dca.h
dcache.h
fs: implement faster dentry memcmp
2011-01-07 17:50:32 +11:00
dcbnl.h
dccp.h
dccp: Extend CCID packet dequeueing interface
2010-10-28 10:27:00 -07:00
dcookies.h
debug_locks.h
debugfs.h
debugobjects.h
delay.h
delayacct.h
device-mapper.h
device.h
SYSFS: Allow boot time switching between deprecated and modern sysfs layout
2010-10-22 10:16:43 -07:00
device_cgroup.h
devpts_fs.h
dio.h
dirent.h
display.h
dlm.h
dlm_device.h
dlm_netlink.h
dlm_plock.h
dlmconstants.h
dm-dirty-log.h
dm-io.h
dm-ioctl.h
dm-kcopyd.h
dm-log-userspace.h
dm-region-hash.h
dm9000.h
dma-attrs.h
dma-debug.h
dma-mapping.h
dma_remapping.h
dmaengine.h
dmaengine: provide dummy functions for DMA_ENGINE=n
2011-01-03 01:41:40 -08:00
dmapool.h
dmar.h
dmar, x86: Use function stubs when CONFIG_INTR_REMAP is disabled
2010-11-26 09:57:36 +01:00
dmi.h
dn.h
dnotify.h
dns_resolver.h
dqblk_qtree.h
dqblk_v1.h
dqblk_v2.h
dqblk_xfs.h
drbd.h
drbd: Silenced an assert
2010-10-22 15:55:22 +02:00
drbd_limits.h
drbd_nl.h
drbd_tag_magic.h
ds1286.h
ds2782_battery.h
ds17287rtc.h
dtlk.h
dw_dmac.h
dynamic_debug.h
Merge branch 'for-2.6.37/drivers' of git://git.kernel.dk/linux-2.6-block
2010-10-22 17:03:12 -07:00
edac.h
EDAC: Export edac sysfs class to users.
2010-10-21 14:47:59 +02:00
edac_mce.h
edd.h
eeprom_93cx6.h
efi.h
efs_fs_sb.h
efs_vh.h
eisa.h
elevator.h
Revert "block: fix accounting bug on cross partition merges"
2010-10-24 22:06:02 +02:00
elf-em.h
elf-fdpic.h
elf.h
elfcore-compat.h
elfcore.h
elfnote.h
enclosure.h
err.h
errno.h
errqueue.h
etherdevice.h
ethtool.h
ethtool: Add support for vlan accleration.
2010-10-21 01:26:54 -07:00
eventfd.h
eventpoll.h
exportfs.h
nilfs2: make snapshots in checkpoint tree exportable
2010-10-23 09:24:34 +09:00
ext2_fs.h
ext2_fs_sb.h
ext3_fs.h
ext3_fs_i.h
ext3_fs_sb.h
ext3_jbd.h
f75375s.h
fadvise.h
falloc.h
fanotify.h
fanotify: split version into version and metadata_len
2010-12-15 13:56:33 -05:00
fault-inject.h
fb.h
fbcmap: integer overflow bug
2010-11-17 14:55:45 +09:00
fcdevice.h
fcntl.h
fd.h
fddidevice.h
fdreg.h
Update broken web addresses in the kernel.
2010-10-18 11:03:14 +02:00
fdtable.h
fec.h
fib_rules.h
fiemap.h
file.h
filter.h
fips.h
firewire-cdev.h
firewire-constants.h
firewire.h
firmware-map.h
firmware.h
flat.h
flex_array.h
font.h
freezer.h
fs.h
fs: dcache per-bucket dcache hash locking
2011-01-07 17:50:31 +11:00
fs_enet_pd.h
fs_stack.h
fs_struct.h
fs: fs_struct use seqlock
2011-01-07 17:50:27 +11:00
fs_uart_pd.h
fscache-cache.h
fscache.h
fsl-diu-fb.h
fsl-diu-fb: drop dead ioctl define
2010-11-15 13:49:51 +09:00
fsl_devices.h
mxc_udc: add workaround for ENGcm09152 for i.MX35
2010-10-22 10:22:17 -07:00
fsnotify.h
fs: dcache remove dcache_lock
2011-01-07 17:50:23 +11:00
fsnotify_backend.h
fs: dcache remove dcache_lock
2011-01-07 17:50:23 +11:00
ftrace.h
ftrace_event.h
ftrace_irq.h
fuse.h
futex.h
gameport.h
gcd.h
gen_stats.h
genalloc.h
generic_acl.h
fs: provide rcu-walk aware permission i_ops
2011-01-07 17:50:29 +11:00
generic_serial.h
genetlink.h
genhd.h
Revert "block: fix accounting bug on cross partition merges"
2010-10-24 22:06:02 +02:00
getcpu.h
gfp.h
PM / Hibernate: Fix memory corruption related to swap
2010-12-06 23:52:08 +01:00
gfs2_ondisk.h
gigaset_dev.h
gpio-fan.h
hwmon: add generic GPIO fan driver
2010-10-25 14:11:37 -07:00
gpio.h
gpio_keys.h
Input: add input driver for polled GPIO buttons
2010-12-06 17:15:15 -08:00
gpio_mouse.h
gsmmux.h
hardirq.h
hardirq.h: needs sched.h if using BKL
2010-11-18 10:56:29 -08:00
hash.h
hdlc.h
hdlcdrv.h
hdreg.h
hid-debug.h
hid.h
Merge branch 'uc-logic' into for-linus
2010-10-23 22:49:32 +02:00
hiddev.h
hidraw.h
highmem.h
include/linux/highmem.h needs hardirq.h
2010-11-12 07:55:30 -08:00
highuid.h
hil.h
hil_mlc.h
hippidevice.h
hp_sdc.h
hpet.h
hrtimer.h
htcpld.h
htirq.h
hugetlb.h
hugetlb_inline.h
hw_breakpoint.h
perf,hw_breakpoint: Initialize hardware api earlier
2010-11-12 14:51:55 +01:00
hw_random.h
hwmon-sysfs.h
hwmon-vid.h
hwmon.h
hysdn_if.h
i2c-algo-bit.h
i2c-algo-pca.h
i2c-algo-pcf.h
i2c-dev.h
i2c-gpio.h
i2c-id.h
i2c: Delete unused adapter IDs
2010-11-15 22:40:38 +01:00
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: Mark i2c_adapter.id as deprecated
2010-11-15 22:40:38 +01:00
i2o-dev.h
i2o.h
i8k.h
i7300_idle.h
i8042.h
i82593.h
ibmtr.h
icmp.h
icmpv6.h
ide.h
idr.h
docbook: add idr/ida to kernel-api docbook
2010-10-26 17:40:56 -07:00
ieee80211.h
if.h
if_addr.h
if_addrlabel.h
if_arcnet.h
if_arp.h
if_bonding.h
if_bridge.h
if_cablemodem.h
if_ec.h
if_eql.h
if_ether.h
if_fc.h
if_fddi.h
if_frad.h
if_hippi.h
if_infiniband.h
Update broken web addresses in the kernel.
2010-10-18 11:03:14 +02:00
if_link.h
if_ltalk.h
if_macvlan.h
if_packet.h
if_phonet.h
if_plip.h
if_ppp.h
if_pppol2tp.h
if_pppox.h
if_slip.h
if_strip.h
if_tr.h
if_tun.h
if_tunnel.h
if_vlan.h
vlan: Add function to retrieve EtherType from vlan packets.
2010-11-12 12:30:57 -08:00
if_x25.h
igmp.h
ihex.h
ima.h
in.h
in6.h
tproxy: added tproxy sockopt interface in the IPV6 layer
2010-10-21 16:08:28 +02:00
in_route.h
inet.h
inet_diag.h
inet_lro.h
inetdevice.h
init.h
init.h: add some more documentation to __ref* tags
2010-10-22 10:21:26 -07:00
init_ohci1394_dma.h
init_task.h
signals: move cred_guard_mutex from task_struct to signal_struct
2010-10-27 18:03:12 -07:00
initrd.h
inotify.h
input-polldev.h
input.h
Input: define separate EVIOCGKEYCODE_V2/EVIOCSKEYCODE_V2
2010-12-14 23:55:21 -08:00
intel-gtt.h
intel-iommu.h
intel_mid_dma.h
intel_pmic_gpio.h
interrupt.h
Merge branch 'perf-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip
2010-10-27 18:48:00 -07:00
io-mapping.h
mm: stack based kmap_atomic()
2010-10-26 16:52:08 -07:00
io.h
ioc3.h
ioc4.h
iocontext.h
block: remove unused copy_io_context()
2010-11-11 13:40:11 +01:00
ioctl.h
iommu-helper.h
iommu.h
ioport.h
resources: add arch hook for preventing allocation in reserved areas
2010-12-17 10:01:09 -08:00
ioprio.h
iova.h
ip.h
ip6_tunnel.h
ip_vs.h
ipc.h
ipc_namespace.h
ipmi.h
ipmi_msgdefs.h
ipmi_smi.h
ipsec.h
ipv6.h
tproxy: added tproxy sockopt interface in the IPV6 layer
2010-10-21 16:08:28 +02:00
ipv6_route.h
ipx.h
irda.h
irq.h
genirq: Add single IRQ reservation helper
2010-10-26 10:33:27 +02:00
irq_cpustat.h
irq_work.h
irq_work: Add generic hardirq context callbacks
2010-10-18 19:58:50 +02:00
irqdesc.h
irqflags.h
irqnr.h
genirq: Fix up irq_node() for irq_data changes.
2010-10-28 11:58:39 +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
iso_fs.h
istallion.h
ivtv.h
ivtvfb.h
ixjuser.h
jbd.h
jbd2.h
jbd2: Fix I/O hang in jbd2_journal_release_jbd_inode
2010-10-27 21:25:12 -04:00
jffs2.h
jhash.h
jiffies.h
journal-head.h
joystick.h
jump_label.h
jump label: Add work around to i386 gcc asm goto bug
2010-10-29 14:45:29 -04:00
jump_label_ref.h
jump_label: Add atomic_t interface
2010-10-18 19:58:57 +02:00
jz4740-adc.h
kallsyms.h
kbd_diacr.h
kbd_kern.h
Kbuild
fanotify: allow fanotify to be built
2010-10-28 17:22:13 -04:00
kbuild.h
kd.h
kdb.h
kdb,kgdb: fix sparse fixups
2010-10-22 15:34:12 -05:00
kdebug.h
kdev_t.h
kernel-page-flags.h
kernel.h
include/linux/kernel.h: Move logging bits to include/linux/printk.h
2010-11-15 13:37:37 -08:00
kernel_stat.h
/proc/stat: fix scalability of irq sum of all cpu
2010-10-27 18:03:13 -07:00
kernelcapi.h
kexec.h
key-type.h
key.h
keyboard.h
keyctl.h
kfifo.h
kfifo: fix kfifo_alloc() to return a signed int value
2010-10-27 18:03:18 -07:00
kgdb.h
debug_core,x86,blackfin: Clean up hw debug disable API
2010-10-29 13:14:41 -05:00
klist.h
kmalloc_sizes.h
kmemcheck.h
kmemleak.h
kmod.h
kmsg_dump.h
kobj_map.h
kobject.h
kobject: Introduce kset_find_obj_hinted.
2010-10-22 10:16:44 -07:00
kobject_ns.h
kprobes.h
kref.h
ks0108.h
ks8842.h
ksm.h
kthread.h
kthread_work: make lockdep happy
2010-12-22 10:27:53 +01:00
ktime.h
kvm.h
KVM: PPC: Expose level based interrupt cap
2010-10-24 10:52:19 +02:00
kvm_host.h
Merge branch 'kvm-updates/2.6.37' of git://git.kernel.org/pub/scm/virt/kvm/kvm
2010-10-24 12:47:25 -07:00
kvm_para.h
KVM: Move kvm_guest_init out of generic code
2010-10-24 10:50:49 +02:00
kvm_types.h
l2tp.h
lapb.h
latencytop.h
lcd.h
lcm.h
leds-bd2802.h
leds-lp3944.h
leds-lp5521.h
leds: driver for National Semiconductor LP5521 chip
2010-11-12 07:55:32 -08:00
leds-lp5523.h
leds: driver for National Semiconductors LP5523 chip
2010-11-12 07:55:32 -08:00
leds-pca9532.h
leds-regulator.h
leds.h
led-class: always implement blinking
2010-11-12 07:55:32 -08:00
leds_pwm.h
lglock.h
lguest.h
lguest_launcher.h
libata.h
SCSI host lock push-down
2010-11-16 13:33:23 -08:00
libps2.h
license.h
limits.h
linkage.h
linux_logo.h
lis3lv02d.h
hwmon: lis3: Short explanations of platform data fields
2010-10-25 14:11:39 -07:00
list.h
list.h: new helper - hlist_add_fake()
2010-10-25 21:24:15 -04:00
list_bl.h
kernel: add bl_list
2011-01-07 17:50:31 +11:00
list_nulls.h
list_sort.h
llc.h
lockdep.h
Merge branch 'irq-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip
2010-10-21 14:11:46 -07:00
log2.h
loop.h
lp.h
lru_cache.h
lsm_audit.h
lzo.h
m48t86.h
magic.h
9p: Use V9FS_MAGIC in statfs
2010-10-28 09:08:47 -05:00
major.h
map_to_7segment.h
maple.h
marvell_phy.h
phylib: Add support for Marvell 88E1149R devices.
2010-11-22 08:34:23 -08:00
math64.h
div64_u64(): improve precision on 32bit platforms
2010-10-26 16:52:19 -07:00
matroxfb.h
max17040_battery.h
mbcache.h
mbus.h
mc6821.h
mc146818rtc.h
mca-legacy.h
mca.h
mdio-bitbang.h
mdio-gpio.h
mdio.h
memblock.h
memcontrol.h
memory.h
Driver core: Add section count to memory_block struct
2010-10-22 10:16:44 -07:00
memory_hotplug.h
mem-hotplug: introduce {un}lock_memory_hotplug()
2010-12-02 14:51:15 -08:00
mempolicy.h
mempool.h
memstick.h
meye.h
mg_disk.h
migrate.h
mii.h
minix_fs.h
miscdevice.h
mISDNdsp.h
mISDNhw.h
mISDNif.h
mm.h
mm: wrap get_locked_pte() using __cond_lock()
2010-10-26 16:52:09 -07:00
mm_inline.h
mm_types.h
oom: add per-mm oom disable count
2010-10-26 16:52:05 -07:00
mman.h
mmdebug.h
mmiotrace.h
mmtimer.h
mmu_context.h
mmu_notifier.h
mmu_notifier.h: fix comment spelling
2010-10-28 09:02:15 -07:00
mmzone.h
writeback: do not sleep on the congestion queue if there are no congested BDIs or if significant congestion is not being encountered in the current zone
2010-10-26 16:52:07 -07:00
mnt_namespace.h
mod_devicetable.h
module.h
module: Update prototype for ref_module (formerly use_module)
2010-11-24 15:21:11 +10:30
moduleloader.h
moduleparam.h
modules: no need to align .modinfo strings
2010-10-26 16:52:13 -07:00
mount.h
fs: scale mntget/mntput
2011-01-07 17:50:33 +11:00
mpage.h
mqueue.h
mroute.h
mroute6.h
msdos_fs.h
msg.h
msi.h
msm_mdp.h
mtio.h
mutex-debug.h
mutex.h
mv643xx.h
mv643xx_eth.h
mv643xx_i2c.h
n_r3964.h
Update broken web addresses in the kernel.
2010-10-18 11:03:14 +02:00
namei.h
fs: rcu-walk for path lookup
2011-01-07 17:50:27 +11:00
nbd.h
ncp.h
ncp_fs.h
fs: change d_compare for rcu-walk
2011-01-07 17:50:19 +11:00
ncp_fs_i.h
ncp_fs_sb.h
ncp_mount.h
ncp_no.h
neighbour.h
net.h
fs: avoid inode RCU freeing for pseudo fs
2011-01-07 17:50:26 +11:00
net_dropmon.h
net_tstamp.h
netdevice.h
net: Detect and ignore netif_stop_queue() calls before register_netdev()
2010-11-08 12:17:07 -08:00
netfilter.h
netfilter: NF_HOOK_COND has wrong conditional
2010-11-12 08:26:06 +01:00
netfilter_arp.h
netfilter_bridge.h
netfilter_decnet.h
netfilter_ipv4.h
netfilter_ipv6.h
netlink.h
netlink: fix gcc -Wconversion compilation warning
2010-12-17 12:03:14 -08:00
netpoll.h
bonding: Fix bonding drivers improper modification of netpoll structure
2010-10-18 08:32:07 -07:00
netrom.h
nfs.h
nfs2.h
nfs3.h
nfs4.h
Merge branch 'for-2.6.37' of git://linux-nfs.org/~bfields/linux
2010-10-26 09:55:25 -07:00
nfs4_acl.h
nfs4_mount.h
nfs_fs.h
fs: provide rcu-walk aware permission i_ops
2011-01-07 17:50:29 +11:00
nfs_fs_i.h
nfs_fs_sb.h
NFSv4.1: pnfs: add LAYOUTGET and GETDEVICEINFO infrastructure
2010-10-24 18:07:10 -04:00
nfs_idmap.h
nfs_iostat.h
nfs_mount.h
nfs_page.h
nfs: remove extraneous and problematic calls to nfs_clear_request
2010-12-07 23:02:44 -05:00
nfs_xdr.h
NFS: Ensure we return the dirent->d_type when it is known
2010-11-22 13:24:48 -05:00
nfsacl.h
nfsd_idmap.h
nilfs2_fs.h
nilfs2: change license of exported header file
2010-10-23 09:24:39 +09:00
nl80211.h
nl802154.h
nls.h
nmi.h
node.h
driver core: prune docs about device_interface
2010-11-10 16:57:11 -08:00
nodemask.h
notifier.h
nsc_gpio.h
nsproxy.h
nubus.h
numa.h
nvram.h
nwpserial.h
of.h
of_address.h
of_device.h
of/device: Rework to use common platform_device_alloc() for allocating devices
2010-10-21 11:10:10 -06:00
of_fdt.h
of/flattree: Eliminate need to provide early_init_dt_scan_chosen_arch
2010-10-21 11:10:10 -06:00
of_gpio.h
of_i2c.h
of_irq.h
of/irq: of_irq.c needs to include linux/irq.h
2010-10-21 11:34:55 -06:00
of_mdio.h
of_pdt.h
of_platform.h
of_spi.h
omapfb.h
oom.h
opp.h
PM: Introduce library for device-specific OPPs (v7)
2010-10-17 01:57:50 +02:00
oprofile.h
oxu210hp.h
padata.h
page-debug-flags.h
page-flags.h
[S390] add support for nonquiescing sske
2010-10-25 16:10:15 +02:00
page-isolation.h
page_cgroup.h
memcg: fix false positive VM_BUG on non-SMP
2010-11-25 06:50:40 +09:00
pageblock-flags.h
include/linux/pageblock-flags.h: fix set_pageblock_flags() macro definiton
2010-10-26 16:52:05 -07:00
pagemap.h
mm: retry page fault when blocking on disk transfer
2010-10-26 16:52:09 -07:00
pagevec.h
param.h
parport.h
parport_pc.h
parser.h
patchkey.h
path.h
fs: scale mntget/mntput
2011-01-07 17:50:33 +11:00
pch_dma.h
pci-acpi.h
pci-aspm.h
pci-dma.h
pci.h
PCI: Export some PCI PM functionality
2010-10-17 20:03:06 -07:00
pci_hotplug.h
pci_ids.h
Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6
2010-11-29 14:36:33 -08:00
pci_regs.h
PCI: add PCI_MSIX_TABLE/PBA defines
2010-10-17 20:03:03 -07:00
pcieport_if.h
pda_power.h
percpu-defs.h
percpu: Remove the multi-page alignment facility
2010-10-27 17:53:25 +02:00
percpu.h
Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/percpu
2010-10-22 17:31:36 -07:00
percpu_counter.h
ext4: fix kernel oops if the journal superblock has a non-zero j_errno
2010-10-27 21:30:13 -04:00
perf_event.h
perf: Fix duplicate events with multiple-pmu vs software events
2010-12-08 20:14:08 +01:00
personality.h
pfkeyv2.h
pfn.h
pg.h
phantom.h
phonedev.h
phonet.h
phy.h
phylib: make local function static
2010-10-24 15:07:11 -07:00
phy_fixed.h
pid.h
pid_namespace.h
pim.h
pipe_fs_i.h
Un-inline get_pipe_info() helper function
2010-11-28 16:27:19 -08:00
pkt_cls.h
pkt_sched.h
pktcdvd.h
platform_device.h
driver core: platform_bus: allow runtime override of dev_pm_ops
2010-10-22 10:16:42 -07:00
plist.h
pm.h
PM / Runtime: Implement autosuspend support
2010-10-17 01:57:48 +02:00
pm_qos_params.h
pm_runtime.h
PM / Runtime: Fix pm_runtime_suspended()
2010-12-16 17:12:25 +01:00
pm_wakeup.h
PM / Wakeup: Introduce wakeup source objects and event statistics (v3)
2010-10-17 01:57:43 +02:00
pmu.h
pnp.h
poison.h
poll.h
epoll: make epoll_wait() use the hrtimer range feature
2010-10-27 18:03:18 -07:00
posix-timers.h
posix_acl.h
fs: provide simple rcu-walk generic_check_acl implementation
2011-01-07 17:50:29 +11:00
posix_acl_xattr.h
posix_types.h
power_supply.h
ppdev.h
ppp-comp.h
ppp_channel.h
ppp_defs.h
pps.h
pps_kernel.h
prctl.h
preempt.h
prefetch.h
printk.h
include/linux/kernel.h: Move logging bits to include/linux/printk.h
2010-11-15 13:37:37 -08:00
prio_heap.h
prio_tree.h
proc_fs.h
profile.h
proportions.h
ptp_classify.h
ptrace.h
ptrace: change signature of arch_ptrace()
2010-10-27 18:03:10 -07:00
pwm.h
pwm_backlight.h
backlight: add low threshold to pwm backlight
2010-11-12 07:55:33 -08:00
pxa168_eth.h
qnx4_fs.h
qnxtypes.h
quicklist.h
quota.h
quotaops.h
radeonfb.h
radix-tree.h
radix-tree: fix RCU bug
2010-11-12 07:55:32 -08:00
raid_class.h
ramfs.h
convert get_sb_nodev() users
2010-10-29 04:16:31 -04:00
ramoops.h
ramoops: use the platform data structure instead of module params
2010-10-27 18:03:18 -07:00
random.h
range.h
rar_register.h
ratelimit.h
printk: declare printk_ratelimit_state in ratelimit.h
2010-10-26 16:52:16 -07:00
rational.h
raw.h
rbtree.h
rculist.h
rculist_bl.h
kernel: add bl_list
2011-01-07 17:50:31 +11:00
rculist_nulls.h
rcupdate.h
rcutiny.h
rcutree.h
rds.h
reboot.h
reciprocal_div.h
regset.h
reiserfs_acl.h
reiserfs_fs.h
BKL: remove extraneous #include <smp_lock.h>
2010-11-17 08:59:32 -08:00
reiserfs_fs_i.h
reiserfs_fs_sb.h
reiserfs_xattr.h
fs: provide rcu-walk aware permission i_ops
2011-01-07 17:50:29 +11:00
relay.h
res_counter.h
resource.h
include/linux/resource.h needs types.h
2010-11-12 07:55:30 -08:00
resume-trace.h
PM: Add sysfs attr for rechecking dev hash from PM trace
2010-10-17 01:57:50 +02:00
rfkill.h
ring_buffer.h
ring-buffer: Remove ring_buffer_event_time_delta()
2010-10-20 13:37:56 -04:00
rio.h
rapidio: add handling of redundant routes
2010-10-27 18:03:16 -07:00
rio_drv.h
rio_ids.h
rapidio: add support for IDT CPS Gen2 switches
2010-10-27 18:03:16 -07:00
rio_regs.h
rapidio: fix IDLE2 bits corruption
2010-10-27 18:03:16 -07:00
rmap.h
rmap: wrap page_check_address() using __cond_lock()
2010-10-26 16:52:09 -07:00
romfs_fs.h
root_dev.h
rose.h
rotary_encoder.h
route.h
rslib.h
rtc-v3020.h
rtc.h
rtmutex.h
rtnetlink.h
net: rtnetlink.h -- only include linux/netdevice.h when used by the kernel
2010-11-15 11:29:30 -08:00
rwlock.h
rwlock_api_smp.h
rwlock_types.h
rwsem-spinlock.h
rwsem.h
rxrpc.h
s3c_adc_battery.h
sc26198.h
scatterlist.h
scc.h
sched.h
sched: Cure more NO_HZ load average woes
2010-12-08 20:15:04 +01:00
screen_info.h
sctp.h
scx200.h
scx200_gpio.h
sdla.h
seccomp.h
securebits.h
security.h
fs: rcu-walk for path lookup
2011-01-07 17:50:27 +11:00
selection.h
vcs: invoke the vt update callback when /dev/vcs* is written to
2010-10-22 10:20:06 -07:00
selinux.h
secmark: make secmark object handling generic
2010-10-21 10:12:48 +11:00
selinux_netlink.h
sem.h
semaphore.h
semaphore: Remove mutex emulation
2010-10-30 12:12:50 +02:00
seq_file.h
seq_file_net.h
seqlock.h
kernel: optimise seqlock
2011-01-07 17:50:27 +11:00
serial.h
serial167.h
serial_8250.h
serial: abstraction for 8250 legacy ports
2010-10-22 10:20:10 -07:00
serial_core.h
Merge branch 'omap-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap-2.6
2010-10-25 13:46:56 -07:00
serial_max3100.h
serial_mfd.h
serial_pnx8xxx.h
serial_reg.h
serial_sci.h
serialP.h
serio.h
Input: serio - add support for PS2Mult multiplexer protocol
2010-10-18 09:33:31 -07:00
sfi.h
SFI: remove the v0.7 related definitions from sfi.h
2010-10-18 23:57:06 -04:00
sfi_acpi.h
sh_clk.h
sh: clkfwk: Disable init clk op for non-legacy clocks.
2010-11-15 18:48:25 +09:00
sh_dma.h
sh_intc.h
sh: intc: Fix up initializers for gcc 4.5.
2010-11-09 16:38:20 +09:00
sh_pfc.h
sh_timer.h
ARM: shmobile: remove sh_timer_config clk member
2010-10-31 10:40:39 -04:00
shm.h
shmem_fs.h
sht15.h
signal.h
signalfd.h
skbuff.h
net: avoid RCU for NOCACHE dst
2010-10-20 03:02:23 -07:00
slab.h
kernel: kmem_ptr_validate considered harmful
2011-01-07 17:50:16 +11:00
slab_def.h
slob_def.h
slub_def.h
sm501-regs.h
sm501.h
smc91x.h
smc911x.h
smp.h
Typedef SMP call function pointer
2010-10-27 17:28:36 +01:00
smp_lock.h
Fix build failure due to hwirq.h needing smp_lock.h
2010-11-17 14:58:36 -08:00
smsc911x.h
snmp.h
tcp: Replace time wait bucket msg by counter
2010-12-08 12:16:33 -08:00
socket.h
net: Limit socket I/O iovec total length to INT_MAX.
2010-10-28 11:47:52 -07:00
sockios.h
som.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
srcu.h
stackprotector.h
stacktrace.h
stallion.h
start_kernel.h
stat.h
statfs.h
stddef.h
stmmac.h
stop_machine.h
string.h
string_helpers.h
stringify.h
superhyway.h
suspend.h
PM: Allow wakeup events to abort freezing of tasks
2010-10-17 01:57:49 +02:00
suspend_ioctls.h
svga.h
swab.h
swap.h
mm: only build per-node scan_unevictable functions when NUMA is enabled
2010-10-26 16:52:05 -07:00
swapops.h
swiotlb.h
synclink.h
drivers/char/synclink_gt.c: add extended sync feature
2010-10-27 18:03:14 -07:00
sys.h
syscalls.h
ptrace: change signature of sys_ptrace() and friends
2010-10-27 18:03:10 -07:00
sysctl.h
sysdev.h
sysfs.h
sysfs: Add sysfs_merge_group() and sysfs_unmerge_group()
2010-10-17 01:57:44 +02:00
syslog.h
sysrq.h
sysv_fs.h
task_io_accounting.h
task_io_accounting_ops.h
taskstats.h
taskstats: pad taskstats netlink response for aligment issues on ia64
2010-12-22 19:43:34 -08:00
taskstats_kern.h
tboot.h
tc.h
tca6416_keypad.h
tcp.h
telephony.h
termios.h
textsearch.h
textsearch_fsm.h
tfrc.h
thermal.h
thread_info.h
threads.h
ti_wilink_st.h
tick.h
tifm.h
timb_dma.h
timb_gpio.h
time.h
timecompare.h
timer.h
timerfd.h
timeriomem-rng.h
times.h
timex.h
tiocl.h
tipc.h
Revert c6537d6742
2010-10-21 04:11:07 -07:00
tipc_config.h
topology.h
toshiba.h
tpm.h
trace_clock.h
trace_seq.h
tracehook.h
signals: move cred_guard_mutex from task_struct to signal_struct
2010-10-27 18:03:12 -07:00
tracepoint.h
transport_class.h
trdevice.h
tsacct_kern.h
tty.h
Merge branch 'tty-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/tty-2.6
2010-12-02 12:58:16 -08:00
tty_driver.h
tty: Make tiocgicount a handler
2010-10-22 10:20:04 -07:00
tty_flip.h
tty_ldisc.h
typecheck.h
types.h
types.h: move misplaced comment
2010-10-26 16:52:03 -07:00
u64_stats_sync.h
uaccess.h
ucb1400.h
udf_fs_i.h
udp.h
uinput.h
uio.h
uio_driver.h
uio: Change mail address of Hans J. Koch
2010-11-10 16:57:11 -08:00
ultrasound.h
un.h
unistd.h
usb.h
usb: musb: do not use dma for control transfers
2010-11-22 12:55:02 +02:00
usb_usual.h
usb-storage: add new no_read_capacity_16 quirk
2010-10-22 10:22:05 -07:00
usbdevice_fs.h
user-return-notifier.h
user.h
user_namespace.h
utime.h
uts.h
utsname.h
uuid.h
uwb.h
vermagic.h
veth.h
vfs.h
vga_switcheroo.h
vgaarb.h
vhost.h
via-core.h
[media] Add the via framebuffer camera controller driver
2010-10-21 13:45:28 -02:00
via-gpio.h
via.h
via_i2c.h
video_output.h
ACPI: video: fix build for VIDEO_OUTPUT_CONTROL=n
2010-12-11 02:01:35 -05:00
videodev.h
videodev2.h
[media] V4L2: Add seek spacing and RDS CAP bits
2010-10-21 07:55:58 -02:00
virtio.h
virtio_9p.h
Remove duplicate includes from many files
2010-10-27 18:03:18 -07:00
virtio_balloon.h
virtio_blk.h
virtio_config.h
virtio_console.h
virtio_ids.h
virtio_net.h
virtio_pci.h
virtio_ring.h
virtio_rng.h
vlynq.h
vmalloc.h
vmalloc: eagerly clear ptes on vunmap
2010-12-02 14:51:15 -08:00
vmstat.h
vt.h
vt_buffer.h
vt_kern.h
w1-gpio.h
wait.h
wanrouter.h
watchdog.h
wimax.h
wireless.h
wl12xx.h
wm97xx.h
workqueue.h
workqueues: s/ON_STACK/ONSTACK/
2010-10-26 16:52:14 -07:00
writeback.h
Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mason/btrfs-unstable
2010-10-30 09:05:48 -07:00
x25.h
xattr.h
xfrm.h
xilinxfb.h
yam.h
z2_battery.h
zconf.h
zlib.h
zorro.h
zorro_ids.h
zutil.h