Star64_linux/include/linux
Linus Torvalds bc08b449ee lockref: implement lockless reference count updates using cmpxchg()
Instead of taking the spinlock, the lockless versions atomically check
that the lock is not taken, and do the reference count update using a
cmpxchg() loop.  This is semantically identical to doing the reference
count update protected by the lock, but avoids the "wait for lock"
contention that you get when accesses to the reference count are
contended.

Note that a "lockref" is absolutely _not_ equivalent to an atomic_t.
Even when the lockref reference counts are updated atomically with
cmpxchg, the fact that they also verify the state of the spinlock means
that the lockless updates can never happen while somebody else holds the
spinlock.

So while "lockref_put_or_lock()" looks a lot like just another name for
"atomic_dec_and_lock()", and both optimize to lockless updates, they are
fundamentally different: the decrement done by atomic_dec_and_lock() is
truly independent of any lock (as long as it doesn't decrement to zero),
so a locked region can still see the count change.

The lockref structure, in contrast, really is a *locked* reference
count.  If you hold the spinlock, the reference count will be stable and
you can modify the reference count without using atomics, because even
the lockless updates will see and respect the state of the lock.

In order to enable the cmpxchg lockless code, the architecture needs to
do three things:

 (1) Make sure that the "arch_spinlock_t" and an "unsigned int" can fit
     in an aligned u64, and have a "cmpxchg()" implementation that works
     on such a u64 data type.

 (2) define a helper function to test for a spinlock being unlocked
     ("arch_spin_value_unlocked()")

 (3) select the "ARCH_USE_CMPXCHG_LOCKREF" config variable in its
     Kconfig file.

This enables it for x86-64 (but not 32-bit, we'd need to make sure
cmpxchg() turns into the proper cmpxchg8b in order to enable it for
32-bit mode).

Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2013-09-02 12:12:15 -07:00
..
amba dmaengine: PL08x: Avoid collisions with get_signal() macro 2013-07-05 11:40:47 +05:30
bcma bcma: add support for BCM43142 2013-06-27 13:42:16 -04:00
byteorder
can ARM: imx: flexcan: Remove platform file 2013-06-27 15:15:32 +02:00
ceph libceph: fix invalid unsigned->signed conversion for timespec encoding 2013-07-09 12:18:06 -07:00
clk The common clock framework changes for 3.11 include new clock drivers 2013-07-03 11:54:50 -07:00
crush
decompress lib: add support for LZ4-compressed kernel 2013-07-09 10:33:30 -07:00
dma
extcon
fsl
hsi
i2c mfd: twl-core: Change TWL6025 references to TWL6032 2013-06-20 10:26:29 +02:00
iio iio:trigger: Fix use_count race condition 2013-07-20 10:18:53 +01:00
input For the 3.11 merge we only have one new MFD driver for the Kontron PLD. 2013-07-10 11:10:27 -07:00
irqchip
isdn
lockd
mfd Second round of IIO fixes for the 3.11 cycle. 2013-08-05 14:04:24 +08:00
mlx4 net/mlx4_core: Add HW enforcement to VF link state 2013-07-01 13:10:57 -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: esdhc: Fix bug when writing to SDHCI_HOST_CONTROL register 2013-07-05 12:48:35 -04:00
mtd
netfilter
netfilter_arp
netfilter_bridge
netfilter_ipv4
netfilter_ipv6
nfsd
pinctrl pinctrl: set unit for debounce time pinconfig to usec 2013-06-25 15:34:44 +02:00
platform_data ARM: pxa: propagate errors from regulator_enable() to pxamci 2013-07-23 12:15:15 -07:00
power
raid
regulator Merge remote-tracking branch 'regulator/topic/linar' into regulator-next 2013-07-01 11:17:08 +01:00
rtc
sched
spi Merge remote-tracking branch 'spi/topic/xilinx' into spi-next 2013-06-26 16:21:06 +01:00
ssb
sunrpc SUNRPC: If the rpcbind channel is disconnected, fail the call to unregister 2013-08-07 17:07:18 -04:00
tc_act
unaligned
usb ARM SoC specific changes 2013-07-02 13:43:38 -07:00
uwb
wimax
8250_pci.h
a.out.h
acct.h
acpi.h Revert "ACPI / video / i915: No ACPI backlight if firmware expects Windows 8" 2013-07-26 14:59:20 +02:00
acpi_dma.h
acpi_gpio.h
acpi_io.h
acpi_pmtmr.h
adb.h
adfs_fs.h
aer.h PCI changes for the v3.11 merge window: 2013-07-03 16:31:35 -07:00
agp_backend.h
agpgart.h
ahci_platform.h
aio.h
alarmtimer.h
altera_jtaguart.h
altera_uart.h
amd-iommu.h
amifd.h
amifdreg.h
amigaffs.h
anon_inodes.h
apm-emulation.h
apm_bios.h
apple_bl.h
arcdevice.h
arm-cci.h
asn1.h
asn1_ber_bytecode.h
asn1_decoder.h
async.h
async_tx.h drivers/dma: remove unused support for MEMSET operations 2013-07-03 16:07:42 -07:00
ata.h
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 audit: fix mq_open and mq_unlink to add the MQ root as a hidden parent audit_names record 2013-07-09 10:33:19 -07:00
auto_dev-ioctl.h
auto_fs.h
auxvec.h
average.h
b1pcmcia.h
backing-dev.h
backlight.h backlight: add devm_backlight_device_{register,unregister}() 2013-07-03 16:07:43 -07:00
balloon_compaction.h
basic_mmio_gpio.h
bcd.h
bch.h
bcm47xx_wdt.h
bfin_mac.h
binfmts.h
bio.h xtensa: remove the second argument of __bio_kmap_atomic() 2013-07-08 01:23:15 -07:00
bit_spinlock.h
bitmap.h
bitops.h
bitrev.h
blk-iopoll.h
blk_types.h
blkdev.h
blktrace_api.h
blockgroup_lock.h
bma150.h
bootmem.h mm: kill free_all_bootmem_node() 2013-07-03 16:07:39 -07:00
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 mm: vmscan: take page buffers dirty and locked state into account 2013-07-03 16:07:29 -07:00
bug.h
c2port.h
cache.h
capability.h
cb710.h
cciss_ioctl.h
cdev.h
cdrom.h
cfag12864b.h
cgroup.h Merge branch 'for-3.11-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/cgroup 2013-07-23 15:48:35 -07:00
cgroup_subsys.h cgroup: remove bcache_subsys_id which got added stealthily 2013-07-09 16:30:35 -07:00
circ_buf.h
cleancache.h
clk-private.h
clk-provider.h
clk.h
clkdev.h
clksrc-dbx500-prcmu.h
clockchips.h
clocksource.h clocksource: Reselect clocksource when watchdog validated high-res capability 2013-07-05 11:09:28 +02:00
cm4000_cs.h
cn_proc.h
cnt32_to_63.h
coda.h
coda_psdev.h
com20020.h
compaction.h
compat.h
compiler-gcc.h
compiler-gcc3.h
compiler-gcc4.h
compiler-intel.h
compiler.h
completion.h sched: Rename sched.c as sched/core.c in comments and Documentation 2013-06-19 12:58:42 +02:00
concap.h
configfs.h
connector.h
console.h
console_struct.h
consolemap.h
context_tracking.h
cordic.h
coredump.h
cper.h
cpu.h kernel: delete __cpuinit usage from all core kernel files 2013-07-14 19:36:59 -04:00
cpu_cooling.h thermal: cpu_cooling: fix stub function 2013-07-08 10:13:40 -04:00
cpu_pm.h
cpu_rmap.h
cpufreq.h cpufreq: Fix serialization of frequency transitions 2013-07-04 13:12:44 +02:00
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 Revert "crypto: crct10dif - Wrap crc_t10dif function all to use crypto transform framework" 2013-07-24 17:04:16 +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 vfs: reimplement d_rcu_to_refcount() using lockref_get_or_lock() 2013-09-02 11:38:06 -07:00
dccp.h
dcookies.h
debug_locks.h
debugfs.h
debugobjects.h
delay.h
delayacct.h
devfreq.h
device-mapper.h dm: optimize use SRCU and RCU 2013-07-10 23:41:18 +01:00
device.h driver core: add default groups to struct class 2013-07-16 10:57:37 -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
dma-debug.h
dma-direction.h
dma-mapping.h
dma_remapping.h
dmaengine.h drivers/dma: remove unused support for MEMSET operations 2013-07-03 16:07:42 -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: Allow online change of al-stripes and al-stripe-size 2013-06-28 16:04:36 +02:00
drbd_genl.h drbd: Allow online change of al-stripes and al-stripe-size 2013-06-28 16:04:36 +02:00
drbd_genl_api.h
drbd_limits.h drbd: Allow online change of al-stripes and al-stripe-size 2013-06-28 16:04:36 +02:00
ds1286.h
ds2782_battery.h
ds17287rtc.h
dtlk.h
dw_apb_timer.h Merge branch 'timers-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip 2013-07-06 14:09:38 -07:00
dw_dmac.h
dynamic_debug.h
dynamic_queue_limits.h
earlycpio.h
ecryptfs.h
edac.h EDAC: Fix lockdep splat 2013-07-23 16:01:28 -07:00
edd.h
edma.h
eeprom_93cx6.h
eeprom_93xx46.h
efi-bgrt.h
efi.h Merge branch 'timers-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip 2013-07-06 14:09:38 -07:00
efs_vh.h
eisa.h
elevator.h elevator: Fix a race in elevator switching 2013-07-03 13:25:24 +02:00
elf-fdpic.h
elf.h
elfcore-compat.h
elfcore.h
elfnote.h
enclosure.h
err.h err.h: IS_ERR() can accept __user pointers 2013-07-03 16:07:41 -07: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 fb: make fp_get_options name argument const 2013-06-27 16:53:30 +08:00
fcdevice.h
fcntl.h
fd.h
fddidevice.h
fdtable.h
fec.h
file.h
filter.h Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2013-06-19 16:49:39 -07:00
fips.h
firewire.h firewire: fix libdc1394/FlyCap2 iso event regression 2013-07-27 20:24:36 +02:00
firmware-map.h
firmware.h
fixp-arith.h
flat.h
flex_array.h
flex_proportions.h
fmc-sdb.h FMC: add needed headers 2013-06-17 16:38:57 -07:00
fmc.h fmc: avoid readl/writel namespace conflict 2013-06-19 20:30:32 -07:00
font.h
freezer.h
frontswap.h
fs.h Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs 2013-07-14 11:42:26 -07:00
fs_enet_pd.h
fs_stack.h
fs_struct.h
fs_uart_pd.h
fscache-cache.h FS-Cache: The retrieval remaining-pages counter needs to be atomic_t 2013-06-19 14:16:47 +01:00
fscache.h
fsl-diu-fb.h
fsl_devices.h
fsl_hypervisor.h
fsnotify.h Replace a bunch of file->dentry->d_inode refs with file_inode() 2013-06-29 12:57:13 +04:00
fsnotify_backend.h
ftrace.h tracing: Disable tracing on warning 2013-06-19 23:32:07 -04:00
ftrace_event.h tracing: Fix fields of struct trace_iterator that are zeroed by mistake 2013-08-02 22:28:41 -04:00
ftrace_irq.h
futex.h
gameport.h
gcd.h
genalloc.h
generic_acl.h
genetlink.h
genhd.h
genl_magic_func.h
genl_magic_struct.h
getcpu.h
gfp.h include/linux/gfp.h: fix the comment for GFP_ZONE_TABLE 2013-07-09 10:33:21 -07:00
gpio-fan.h
gpio-pxa.h
gpio.h
gpio_keys.h
gpio_mouse.h
gsmmux.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
hp_sdc.h
hpet.h
hrtimer.h
htcpld.h
htirq.h
huge_mm.h Merge branch 'next' of git://git.kernel.org/pub/scm/linux/kernel/git/benh/powerpc 2013-07-04 10:29:23 -07:00
hugetlb.h mm/hugetlb: remove hugetlb_prefault 2013-07-03 16:07:32 -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
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
i2o.h
i7300_idle.h
i8042.h
i8253.h
i82593.h
icmp.h
icmpv6.h
ide.h
idr.h
ieee80211.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 macvtap: Let TUNSETOFFLOAD actually controll offload features. 2013-06-25 16:44:56 -07:00
if_phonet.h
if_pppol2tp.h
if_pppox.h
if_team.h Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2013-06-19 16:49:39 -07:00
if_tun.h
if_tunnel.h
if_vlan.h vlan: mask vlan prio bits 2013-07-18 13:05:23 -07:00
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 init.h: remove __cpuinit sections from the kernel 2013-06-26 12:13:18 -04:00
init_ohci1394_dma.h
init_task.h
initrd.h
inotify.h
input-polldev.h
input.h
integrity.h
intel-iommu.h
intel_mid_dma.h
intel_pmic_gpio.h
interrupt.h
interval_tree.h
interval_tree_generic.h
io-mapping.h
io.h
ioc3.h
ioc4.h
iocontext.h
iommu-helper.h
iommu.h
ioport.h
ioprio.h
iova.h
ip.h
ipack.h
ipc.h
ipc_namespace.h
ipmi-fru.h FMC: add needed headers 2013-06-17 16:38:57 -07:00
ipmi.h
ipmi_smi.h
ipv6.h ipv6: drop packets with multiple fragmentation headers 2013-08-20 00:11:24 -07:00
ipv6_route.h
irq.h genirq: Add irq_get_trigger_type() to get IRQ flags 2013-06-25 11:48:24 +02:00
irq_cpustat.h
irq_work.h
irqchip.h
irqdesc.h
irqdomain.h irqdomain: make irq_linear_revmap() a fast path again 2013-06-24 14:02:41 +01:00
irqflags.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
jbd.h
jbd2.h jbd2: invalidate handle if jbd2_journal_restart() fails 2013-07-01 08:12:41 -04:00
jbd_common.h
jhash.h
jiffies.h net: convert lls to use time_in_range() 2013-07-02 15:53:53 -07:00
journal-head.h
joystick.h
jump_label.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 tracing: Fix trace_dump_stack() proto when CONFIG_TRACING is not set 2013-08-02 22:38:10 -04:00
kernel_stat.h
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
kprobes.h
kref.h
ks0108.h
ks8842.h
ks8851_mll.h
ksm.h
kthread.h
ktime.h Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next 2013-07-09 18:24:39 -07:00
kvm_host.h KVM fixes for 3.11 2013-07-03 13:21:40 -07:00
kvm_para.h
kvm_types.h
l2tp.h
lapb.h
latencytop.h
lcd.h lcd: add devm_lcd_device_{register,unregister}() 2013-07-03 16:07:43 -07:00
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
libfdt.h
libfdt_env.h
libps2.h
license.h
linkage.h
linux_logo.h
lis3lv02d.h
list.h linked-list: Remove __list_for_each 2013-07-16 22:00:14 -07:00
list_bl.h
list_nulls.h
list_sort.h
llc.h
llist.h llist: llist_add() can use llist_add_batch() 2013-07-13 13:29:32 +04:00
lockdep.h
lockref.h lockref: implement lockless reference count updates using cmpxchg() 2013-09-02 12:12:15 -07:00
log2.h
lp.h
lru_cache.h
lsm_audit.h
lz4.h lib: add lz4 compressor module 2013-07-09 10:33:30 -07:00
lzo.h
m48t86.h
mailbox.h
maple.h
marvell_phy.h
math64.h
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
memcontrol.h mm, memcg: don't take task_lock in task_in_mem_cgroup 2013-07-03 16:07:26 -07:00
memory.h
memory_hotplug.h
mempolicy.h
mempool.h
memstick.h
mg_disk.h
micrel_phy.h
migrate.h
migrate_mode.h
mii.h
miscdevice.h
mISDNdsp.h
mISDNhw.h
mISDNif.h
mm.h mm: remove unused VM_<READfoo> macros and expand other in-place 2013-07-09 10:33:23 -07:00
mm_inline.h
mm_types.h x86 get_unmapped_area: Access mmap_legacy_base through mm_struct member 2013-08-22 10:19:35 -07:00
mman.h mm: tune vm_committed_as percpu_counter batching size 2013-07-03 16:07:32 -07:00
mmdebug.h
mmiotrace.h
mmu_context.h
mmu_notifier.h
mmzone.h mm: remove unused functions is_{normal_idx, normal, dma32, dma} 2013-07-09 10:33:22 -07:00
mnt_namespace.h
mod_devicetable.h ssb: fix alignment of struct bcma_device_id 2013-07-18 16:21:59 -04:00
module.h
moduleloader.h
moduleparam.h There is no /sys/parameters 2013-07-02 15:38:19 +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: Add support for wound/wait style locks 2013-06-26 12:10:56 +02:00
mutex.h mutex: Move ww_mutex definitions to ww_mutex.h 2013-07-12 12:07:46 +02:00
mv643xx.h
mv643xx_eth.h
mv643xx_i2c.h
mxm-wmi.h
n_r3964.h
namei.h
nbd.h nbd: correct disconnect behavior 2013-07-03 16:08:05 -07:00
net.h
netdev_features.h
netdevice.h net: rename CONFIG_NET_LL_RX_POLL to CONFIG_NET_RX_BUSY_POLL 2013-08-01 15:11:17 -07:00
netfilter.h
netfilter_bridge.h
netfilter_ipv4.h
netfilter_ipv6.h
netlink.h netlink: fix splat in skb_clone with large messages 2013-06-27 22:44:16 -07:00
netpoll.h
nfs.h
nfs3.h
nfs4.h
nfs_fs.h NFS: Make nfs_attribute_cache_expired() non-static 2013-07-09 17:17:07 -04:00
nfs_fs_i.h
nfs_fs_sb.h
nfs_idmap.h
nfs_iostat.h
nfs_page.h
nfs_xdr.h Merge branch 'labeled-nfs' into linux-next 2013-06-28 16:29:51 -04:00
nfsacl.h
nilfs2_fs.h
nl802154.h
nls.h
nmi.h watchdog: Rename confusing state variable 2013-06-20 15:41:18 +02:00
node.h
nodemask.h
notifier.h
nsc_gpio.h
nsproxy.h
ntb.h
nubus.h
numa.h
nvme.h
nvram.h
nwpserial.h
nx842.h
of.h
of_address.h
of_device.h
of_dma.h
of_fdt.h
of_gpio.h
of_i2c.h
of_iommu.h
of_irq.h
of_mdio.h
of_mtd.h
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
opp.h
oprofile.h
oxu210hp.h
padata.h
page-debug-flags.h
page-flags-layout.h
page-flags.h
page-isolation.h
page_cgroup.h
pageblock-flags.h mm/pageblock: remove get/set_pageblock_flags 2013-07-03 16:07:32 -07:00
pagemap.h
pagevec.h mm: remove lru parameter from __pagevec_lru_add and remove parts of pagevec API 2013-07-03 16:07:31 -07:00
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: add pcibios_release_device 2013-06-26 21:10:05 +02:00
pci_hotplug.h
pci_ids.h Merge branch 'pci/misc' into next 2013-06-26 15:55:52 -06:00
pcieport_if.h
pda_power.h
percpu-defs.h
percpu-refcount.h
percpu-rwsem.h
percpu.h
percpu_counter.h
perf_event.h kernel: delete __cpuinit usage from all core kernel files 2013-07-14 19:36:59 -04:00
perf_regs.h
personality.h
pfn.h
phonedev.h
phonet.h
phy.h
phy_fixed.h
pid.h kernel/fork.c:copy_process(): don't add the uninitialized child to thread/task/pid lists 2013-07-03 16:08:03 -07:00
pid_namespace.h
pim.h
pipe_fs_i.h
pktcdvd.h
platform_device.h Device tree updates for v3.11 2013-07-04 15:51:45 -07:00
plist.h
pm.h
pm2301_charger.h
pm_clock.h
pm_domain.h
pm_qos.h
pm_runtime.h
pm_wakeup.h PM / Sleep: Fix comment typo in pm_wakeup.h 2013-07-15 01:31:37 +02:00
pmu.h
pnfs_osd_xdr.h
pnp.h
poison.h
poll.h
posix-clock.h
posix-timers.h posix_cpu_timer: consolidate expiry time type 2013-07-03 16:16:20 +02:00
posix_acl.h
posix_acl_xattr.h
power_supply.h power_supply: Move of_node out of the #ifdef CONFIG_OF 2013-06-28 18:20:52 -07:00
ppp-comp.h
ppp_channel.h
ppp_defs.h
pps-gpio.h
pps_kernel.h
preempt.h tracing/context-tracking: Add preempt_schedule_context() for tracing 2013-06-19 12:55:10 +02:00
prefetch.h
printk.h
prio_heap.h
proc_fs.h
proc_ns.h
profile.h
projid.h
proportions.h
pstore.h pstore: Pass header size in the pstore write callback 2013-07-01 18:10:48 +10:00
pstore_ram.h
pti.h
ptp_classify.h
ptp_clock_kernel.h
ptrace.h ptrace: revert "Prepare to fix racy accesses on task breakpoints" 2013-07-09 10:33:26 -07:00
pvclock_gtod.h timekeeping: Indicate that clock was set in the pvclock gtod notifier 2013-06-28 23:15:06 +02:00
pwm.h pwm: Add sysfs interface 2013-06-21 11:32:51 +02:00
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
random.h
range.h
ratelimit.h
rational.h
rbtree.h
rbtree_augmented.h
rculist.h
rculist_bl.h
rculist_nulls.h
rcupdate.h
rcutiny.h
rcutree.h
reboot.h reboot: move arch/x86 reboot= handling to generic kernel 2013-07-09 10:33:29 -07:00
reciprocal_div.h
regmap.h regmap: Add another missing header for !CONFIG_REGMAP stubs 2013-08-15 12:08:55 +01:00
regset.h
relay.h
remoteproc.h
res_counter.h
reservation.h mutex: Move ww_mutex definitions to ww_mutex.h 2013-07-12 12:07:46 +02:00
reset-controller.h
reset.h
resource.h
resume-trace.h
rfkill-gpio.h
rfkill-regulator.h
rfkill.h
ring_buffer.h
rio.h rapidio: change endpoint device name format 2013-07-03 16:08:05 -07:00
rio_drv.h
rio_ids.h rapidio: add udev notification 2013-07-03 16:08:05 -07:00
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 lib/scatterlist: introduce sg_pcopy_from_buffer() and sg_pcopy_to_buffer() 2013-07-09 10:33:30 -07:00
scc.h
sched.h Revert "x86 get_unmapped_area(): use proper mmap base for bottom-up direction" 2013-08-22 10:18:44 -07:00
sched_clock.h
screen_info.h
sctp.h
scx200.h
scx200_gpio.h
sdb.h FMC: add needed headers 2013-06-17 16:38:57 -07:00
sdla.h
seccomp.h
securebits.h
security.h NFS client updates for Linux 3.11 2013-07-09 12:09:43 -07:00
selection.h
selinux.h
sem.h ipc/sem.c: replace shared sem_otime with per-semaphore value 2013-07-09 10:33:28 -07:00
semaphore.h
seq_file.h seq_file: add seq_list_*_percpu helpers 2013-07-08 13:36:41 +04:00
seq_file_net.h
seqlock.h
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: shdma_chan_filter() has to be in shdma-base.h 2013-07-05 11:40:59 +05:30
sh_eth.h
sh_intc.h
sh_timer.h
shdma-base.h dmaengine: shdma: fix a build failure on platforms with no DMA support 2013-07-22 19:40:01 -07:00
shm.h
shmem_fs.h
shrinker.h
signal.h
signalfd.h
sirfsoc_dma.h
sizes.h
skbuff.h net: rename CONFIG_NET_LL_RX_POLL to CONFIG_NET_RX_BUSY_POLL 2013-08-01 15:11:17 -07:00
slab.h slab: add kmalloc() to kernel API documentation 2013-07-07 19:02:59 +03:00
slab_def.h
slob_def.h slab: add kmalloc() to kernel API documentation 2013-07-07 19:02:59 +03:00
slub_def.h
sm501-regs.h
sm501.h
smc91x.h
smc911x.h
smp.h include/linux/smp.h:on_each_cpu(): switch back to a macro 2013-07-03 16:07:22 -07:00
smpboot.h
smsc911x.h
smscphy.h
sock_diag.h
socket.h RDMA/cma: Define native IB address 2013-06-20 13:08:01 -07:00
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_smp.h: fix preprocessor comments 2013-06-19 23:34:50 +02:00
spinlock_api_up.h
spinlock_types.h
spinlock_types_up.h
spinlock_up.h sched: Rename sched.c as sched/core.c in comments and Documentation 2013-06-19 12:58:42 +02:00
splice.h splice: don't pass the address of ->f_pos to methods 2013-06-20 19:02:45 +04:00
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 dt:net:stmmac: Add dt specific phy reset callback support. 2013-07-04 14:34:17 -07: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 PM / Sleep: Print last wakeup source on failed wakeup_count write 2013-06-21 00:35:12 +02:00
svga.h
swab.h
swap.h swap: discard while swapping only if SWAP_FLAG_DISCARD_PAGES 2013-07-03 16:07:32 -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 microblaze: fix clone syscall 2013-08-13 17:57:48 -07:00
syscore_ops.h
sysctl.h
sysfs.h sysfs: use file mode defines from stat.h 2013-07-16 10:57:37 -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-powergate.h
tegra-soc.h
textsearch.h
textsearch_fsm.h
tfrc.h
thermal.h
thread_info.h
threads.h
ti_wilink_st.h
tick.h Revert "cpuidle: Quickly notice prediction failure for repeat mode" 2013-07-29 13:32:29 +02:00
tifm.h
timb_dma.h
timb_gpio.h
time-armada-370-xp.h
time.h
timekeeper_internal.h
timer.h
timerfd.h
timeriomem-rng.h
timerqueue.h
timex.h
topology.h
toshiba.h
tpm.h
tpm_command.h
trace_clock.h
trace_seq.h
tracehook.h
tracepoint.h tracing: Add DEFINE_EVENT_FN() macro 2013-06-20 22:24:32 -07:00
transport_class.h
tsacct_kern.h
tty.h n_tty: Encapsulate minimum_to_wake within N_TTY 2013-06-17 12:55:11 -07:00
tty_driver.h
tty_flip.h
tty_ldisc.h n_tty: Encapsulate minimum_to_wake within N_TTY 2013-06-17 12:55:11 -07:00
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: move the definition of USB_MAXCHILDREN 2013-07-16 15:33:02 -07:00
usb_usual.h
usbdevice_fs.h
user-return-notifier.h
user.h
user_namespace.h userns: limit the maximum depth of user_namespace->parent chain 2013-08-08 13:11:39 -07:00
uts.h
utsname.h
uuid.h
uwb.h
vermagic.h
vexpress.h reboot: arm: change reboot_mode to use enum reboot_mode 2013-07-09 10:33:29 -07:00
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 Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next 2013-07-09 18:24:39 -07:00
virtio_caif.h
virtio_config.h
virtio_console.h
virtio_mmio.h
virtio_ring.h virtio: include asm/barrier explicitly 2013-07-09 10:47:53 +09:30
virtio_scsi.h
vlynq.h
vm_event_item.h
vm_sockets.h
vmalloc.h mm/vmalloc.c: rename VM_UNLIST to VM_UNINITIALIZED 2013-07-09 10:33:21 -07:00
vme.h
vmpressure.h vmpressure: make sure there are no events queued after memcg is offlined 2013-07-31 14:41:04 -07:00
vmstat.h
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 [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 drivers: avoid format strings in names passed to alloc_workqueue() 2013-07-03 16:07:41 -07:00
writeback.h mm/writeback: commit reason of WB_REASON_FORKER_THREAD mismatch name 2013-07-09 10:33:22 -07:00
ww_mutex.h mutex: Move ww_mutex definitions to ww_mutex.h 2013-07-12 12:07:46 +02:00
xattr.h
xilinxfb.h
xz.h
yam.h
z2_battery.h
zbud.h zbud: add to mm/ 2013-07-10 18:11:34 -07:00
zconf.h
zlib.h
zorro.h
zorro_ids.h
zutil.h