android_kernel_google_msm/include/linux
Paul Mackerras c93f766909 perf_counter: Fix race in attaching counters to tasks and exiting
Commit 564c2b21 ("perf_counter: Optimize context switch between
identical inherited contexts") introduced a race where it is possible
that a counter being attached to a task could get attached to the
wrong task, if the task is one that has inherited its context from
another task via fork.  This happens because the optimized context
switch could switch the context to another task after find_get_context
has read task->perf_counter_ctxp.  In fact, it's possible that the
context could then get freed, if the other task then exits.

This fixes the problem by protecting both the context switch and the
critical code in find_get_context with spinlocks.  The context switch
locks the cxt->lock of both the outgoing and incoming contexts before
swapping them.  That means that once code such as find_get_context
has obtained the spinlock for the context associated with a task,
the context can't get swapped to another task.  However, the context
may have been swapped in the interval between reading
task->perf_counter_ctxp and getting the lock, so it is necessary to
check and retry.

To make sure that none of the contexts being looked at in
find_get_context can get freed, this changes the context freeing code
to use RCU.  Thus an rcu_read_lock() is sufficient to ensure that no
contexts can get freed.  This part of the patch is lifted from a patch
posted by Peter Zijlstra.

This also adds a check to make sure that we can't add a counter to a
task that is exiting.

There is also a race between perf_counter_exit_task and
find_get_context; this solves the race by moving the get_ctx that
was in perf_counter_alloc into the locked region in find_get_context,
so that once find_get_context has got the context for a task, it
won't get freed even if the task calls perf_counter_exit_task.  It
doesn't matter if new top-level (non-inherited) counters get attached
to the context after perf_counter_exit_task has detached the context
from the task.  They will just stay there and never get scheduled in
until the counters' fds get closed, and then perf_release will remove
them from the context and eventually free the context.

With this, we are now doing the unclone in find_get_context rather
than when a counter was added to or removed from a context (actually,
we were missing the unclone_ctx() call when adding a counter to a
context).  We don't need to unclone when removing a counter from a
context because we have no way to remove a counter from a cloned
context.

This also takes out the smp_wmb() in find_get_context, which Peter
Zijlstra pointed out was unnecessary because the cmpxchg implies a
full barrier anyway.

Signed-off-by: Paul Mackerras <paulus@samba.org>
Acked-by: Peter Zijlstra <a.p.zijlstra@chello.nl>
Cc: Corey Ashford <cjashfor@linux.vnet.ibm.com>
Cc: Mike Galbraith <efault@gmx.de>
Cc: Marcelo Tosatti <mtosatti@redhat.com>
Cc: Arnaldo Carvalho de Melo <acme@redhat.com>
Cc: John Kacur <jkacur@redhat.com>
LKML-Reference: <18974.33033.667187.273886@cargo.ozlabs.ibm.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
2009-05-28 15:03:50 +02:00
..
amba
byteorder
can
decompress
dvb
hdlc
i2c i2c: xtensa s6000 i2c driver 2009-04-07 10:23:34 +01:00
isdn
lockd
mfd Merge git://git.infradead.org/battery-2.6 2009-04-08 17:45:02 -07:00
mlx4
mmc
mtd [MTD] [NAND] Add support for 4KiB pages. 2009-04-06 07:01:56 -07:00
netfilter Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/kaber/nf-2.6 2009-05-05 12:00:53 -07:00
netfilter_arp
netfilter_bridge
netfilter_ipv4
netfilter_ipv6
nfsd nfsd41: define nfsd4_set_statp as noop for !CONFIG_NFSD_V4 2009-04-06 09:48:20 -07:00
raid
regulator regulator: fix header file missing kernel-doc 2009-04-28 18:58:06 +01:00
rtc
spi spi: documentation: emphasise spi_master.setup() semantics 2009-04-21 13:41:50 -07:00
ssb
sunrpc SUNRPC: Fix the problem of EADDRNOTAVAIL syslog floods on reconnect 2009-05-02 16:35:08 -07:00
tc_act
tc_ematch
unaligned
usb Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6 2009-05-05 08:26:10 -07:00
uwb
wimax
8250_pci.h
a.out.h
ac97_codec.h
acct.h
acpi.h ACPI: add /sys/firmware/acpi/interrupts/sci_not counter 2009-04-21 00:35:47 -04:00
acpi_pmtmr.h
adb.h
adfs_fs.h
adfs_fs_i.h
adfs_fs_sb.h
aer.h
affs_hardblocks.h
agp_backend.h
agpgart.h
aio.h
aio_abi.h
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: Media rotation rate and form factor heuristics 2009-05-15 14:14:56 -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
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
attribute_container.h
audit.h
auto_dev-ioctl.h
auto_fs.h
auto_fs4.h
auxvec.h
ax25.h
b1lli.h
b1pcmcia.h
backing-dev.h block: change the request allocation/congestion logic to be sync/async based 2009-04-06 08:04:53 -07:00
backlight.h
baycom.h
bcd.h
bfs_fs.h
binfmts.h alpha: binfmt_aout fix 2009-05-02 15:36:10 -07:00
bio.h bio: fix bio_kmalloc() 2009-04-22 08:35:10 +02:00
bit_spinlock.h
bitmap.h
bitops.h bitops: Add __ffs64 bitop 2009-04-23 10:06:35 +01:00
bitrev.h
blkdev.h Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/bart/ide-2.6 2009-05-02 16:48:32 -07:00
blkpg.h
blktrace_api.h
blockgroup_lock.h
bootmem.h
bottom_half.h
bpqether.h
brcmphy.h
bsg.h
buffer_head.h Add block_write_full_page_endio for passing endio handler 2009-04-16 07:47:49 -07:00
bug.h
c2port.h
cache.h
can.h
capability.h add some long-missing capabilities to fs_mask 2009-04-13 08:32:28 -07:00
capi.h
cciss_ioctl.h
cd1400.h
cdev.h
cdk.h
cdrom.h
cfag12864b.h
cgroup.h Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial 2009-04-03 15:24:35 -07:00
cgroup_subsys.h
cgroupstats.h
chio.h
circ_buf.h
clk.h
clockchips.h
clocksource.h clocksource: add enable() and disable() callbacks 2009-04-21 13:41:47 -07:00
cm4000_cs.h
cn_proc.h
cnt32_to_63.h
coda.h
coda_cache.h
coda_fs_i.h
coda_linux.h
coda_psdev.h
coff.h
com20020.h
compat.h signals: implement sys_rt_tgsigqueueinfo 2009-04-30 19:24:24 +02:00
compiler-gcc.h
compiler-gcc3.h
compiler-gcc4.h
compiler-intel.h
compiler.h Fix build errors due to CONFIG_BRANCH_TRACER=y 2009-04-07 09:05:35 -07:00
completion.h
comstats.h
concap.h
configfs.h
connector.h Staging: dst: core files. 2009-04-03 14:53:32 -07:00
console.h
console_struct.h
consolemap.h
const.h
cpu.h cpu hotplug: remove unused cpuhotplug_mutex_lock() 2009-04-02 19:05:00 -07:00
cpufreq.h
cpuidle.h
cpumask.h
cpuset.h cpusets: replace zone allowed functions with node allowed 2009-04-02 19:04:57 -07:00
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
ctype.h
cuda.h
cyclades.h
cyclomx.h
cycx_cfm.h
cycx_drv.h
cycx_x25.h
dca.h
dcache.h
dcbnl.h
dccp.h
dcookies.h
debug_locks.h lockdep: warn about lockdep disabling after kernel taint, fix 2009-04-14 11:11:52 +02:00
debugfs.h
debugobjects.h
delay.h
delayacct.h
device-mapper.h dm: remove limited barrier support 2009-04-09 00:27:13 +01:00
device.h Revert driver core: move platform_data into platform_device 2009-05-08 19:22:21 -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-region-hash.h
dm9000.h
dma-attrs.h
dma-debug.h
dma-mapping.h dma-mapping: replace all DMA_32BIT_MASK macro with DMA_BIT_MASK(32) 2009-04-07 08:31:11 -07:00
dma_remapping.h
dmaengine.h ioatdma: fix "ioatdma frees DMA memory with wrong function" 2009-05-12 14:41:47 -07:00
dmapool.h
dmar.h intel-iommu: Handle PCI domains appropriately. 2009-04-04 10:43:31 +01:00
dmi.h
dn.h
dnotify.h
dqblk_qtree.h
dqblk_v1.h
dqblk_v2.h
dqblk_xfs.h
ds1286.h
ds17287rtc.h
dst.h Staging: dst: core files. 2009-04-03 14:53:32 -07:00
dtlk.h
dw_dmac.h
dynamic_debug.h Driver core: remove pr_fmt() from dynamic_dev_dbg() printk 2009-04-16 16:17:11 -07:00
edac.h
edd.h
eeprom_93cx6.h
efi.h
efs_fs_sb.h
efs_vh.h
eisa.h
elevator.h block: fix inconsistency in I/O stat accounting code 2009-04-07 08:12:38 +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
eventfd.h
eventpoll.h
exportfs.h
ext2_fs.h
ext2_fs_sb.h
ext3_fs.h Merge branch 'ext3-latency-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/tytso/ext4 2009-04-03 11:10:33 -07:00
ext3_fs_i.h
ext3_fs_sb.h
ext3_jbd.h
f75375s.h
fadvise.h
falloc.h
fault-inject.h
fb.h fbdev: fix color component field length documentation 2009-04-13 15:04:29 -07:00
fcdevice.h
fcntl.h
fd.h
fddidevice.h
fdreg.h
fdtable.h kmemtrace, fs: fix linux/fdtable.h header file dependencies 2009-04-03 12:13:03 +02:00
fib_rules.h
fiemap.h include/linux/fiemap.h: include types.h now that it's exported 2009-04-13 15:04:30 -07:00
file.h
filter.h
firewire-cdev.h
firewire-constants.h
firmware-map.h
firmware.h
flat.h
font.h
freezer.h
fs.h Fix races around the access to ->s_options 2009-05-09 10:51:34 -04:00
fs_enet_pd.h
fs_stack.h
fs_struct.h
fs_uart_pd.h
fscache-cache.h FS-Cache: Add use of /proc and presentation of statistics 2009-04-03 16:42:37 +01:00
fscache.h FS-Cache: Implement data I/O part of netfs API 2009-04-03 16:42:39 +01:00
fsl_devices.h Merge branch 'merge' of git://git.secretlab.ca/git/linux-2.6 into merge 2009-04-22 13:02:09 +10:00
fsnotify.h
ftrace.h tracing/syscalls: use a dedicated file header 2009-04-09 05:43:32 +02:00
ftrace_irq.h
fuse.h
futex.h
gameport.h
gen_stats.h
genalloc.h
generic_acl.h
generic_serial.h
genetlink.h
genhd.h block: include empty disks in /proc/diskstats 2009-04-22 08:35:10 +02:00
getcpu.h
gfp.h
gfs2_ondisk.h
gigaset_dev.h
gpio.h
gpio_keys.h
gpio_mouse.h
hardirq.h Merge branch 'linus' into irq/threaded 2009-04-06 01:41:22 +02:00
hash.h
hayesesp.h
hdlc.h
hdlcdrv.h
hdpu_features.h
hdreg.h
hid-debug.h
hid.h
hiddev.h
hidraw.h
highmem.h Fix highmem PPC build failure 2009-04-03 09:48:29 -07:00
highuid.h
hil.h
hil_mlc.h
hippidevice.h
hp_sdc.h
hpet.h
hrtimer.h
htirq.h
hugetlb.h
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 Merge branch 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-2.6 2009-04-06 18:11:41 -07:00
i2c-ocores.h
i2c-pca-platform.h
i2c-pnx.h
i2c-pxa.h
i2c.h i2c: Fix sparse warnings for I2C_BOARD_INFO() 2009-04-13 17:02:14 +02:00
i2o-dev.h
i2o.h
i8k.h
i7300_idle.h
i8042.h
ibmtr.h
icmp.h
icmpv6.h
ide.h ide: refactor tf_read() method 2009-04-08 14:13:03 +02:00
idr.h cgroup: CSS ID support 2009-04-02 19:04:53 -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
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
igmp.h
ihex.h
ima.h
in.h
in6.h
in_route.h
inet.h
inet_diag.h
inet_lro.h
inetdevice.h
init.h Remove unused support code for refok sections. 2009-04-27 19:51:58 -07:00
init_ohci1394_dma.h
init_task.h perf_counter: Change pctrl() behaviour 2009-05-24 08:24:08 +02:00
initrd.h
inotify.h
input-polldev.h
input.h Input: add detailed multi-touch finger data report protocol 2009-04-28 09:36:24 -07:00
intel-iommu.h intel-iommu: set compatibility format interrupt 2009-04-03 21:46:01 +01:00
interrupt.h Merge branch 'irq/threaded' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip 2009-04-07 14:07:52 -07:00
io-mapping.h
io.h
ioc3.h
ioc4.h
iocontext.h
ioctl.h
iommu-helper.h
iommu.h
ioport.h
ioprio.h
iova.h
ip.h
ip6_tunnel.h
ip_vs.h
ipc.h
ipc_namespace.h namespaces: mqueue namespace: adapt sysctl 2009-04-07 08:31:09 -07:00
ipmi.h ipmi: add oem message handling 2009-04-21 13:41:48 -07:00
ipmi_msgdefs.h ipmi: add oem message handling 2009-04-21 13:41:48 -07:00
ipmi_smi.h
ipsec.h
ipv6.h
ipv6_route.h
ipx.h
irda.h
irq.h Merge branches 'core-fixes-for-linus', 'irq-fixes-for-linus' and 'timers-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip 2009-04-09 10:35:30 -07:00
irq_cpustat.h
irqflags.h
irqnr.h
irqreturn.h
isa.h
isapnp.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 jbd: use SWRITE_SYNC_PLUG when writing synchronous revoke records 2009-04-14 10:10:47 -04:00
jbd2.h jbd2: use SWRITE_SYNC_PLUG when writing synchronous revoke records 2009-04-14 07:50:56 -04:00
jffs2.h
jhash.h
jiffies.h
journal-head.h
joystick.h
kallsyms.h
kbd_diacr.h
kbd_kern.h
Kbuild romfs: cleanup romfs_fs.h 2009-05-09 10:49:41 -04:00
kbuild.h
kd.h
kdebug.h
kdev_t.h
kernel.h dynamic debug: resurrect old pr_debug() semantics as pr_devel() 2009-04-16 16:17:10 -07:00
kernel_stat.h perfcounters, sched: remove __task_delta_exec() 2009-04-20 20:38:21 +02:00
kernelcapi.h
kexec.h
key-type.h
key.h kmemtrace, security: fix linux/key.h header file dependencies 2009-04-03 12:21:12 +02:00
keyboard.h
keyctl.h
kfifo.h
kgdb.h
klist.h
kmalloc_sizes.h
kmod.h module: try_then_request_module must wait 2009-04-09 07:49:44 -07:00
kobj_map.h
kobject.h
kprobes.h kprobes: support kretprobe and jprobe per-probe disabling 2009-04-07 08:31:08 -07:00
kref.h
ks0108.h
kthread.h
ktime.h
kvm.h KVM: Fix overlapping check for memory slots 2009-04-22 13:52:09 +03:00
kvm_host.h
kvm_para.h
kvm_types.h
lapb.h
latencytop.h
lcd.h
leds-bd2802.h leds: add BD2802GU LED driver 2009-04-06 16:06:26 +01:00
leds-pca9532.h
leds.h leds: Add suspend/resume state flags to leds-gpio 2009-04-06 16:06:26 +01:00
leds_pwm.h leds: simple driver for pwm driven LEDs 2009-04-06 16:06:26 +01:00
lguest.h
lguest_launcher.h
libata.h ata: Report 16/32bit PIO as best we can 2009-04-16 15:28:23 -04:00
libps2.h
license.h
limits.h
linkage.h
linux_logo.h
list.h
list_nulls.h
llc.h
lmb.h
lockdep.h Factor out #ifdefs from kernel/spinlock.c to LOCK_CONTENDED_FLAGS 2009-04-02 19:05:10 -07:00
log2.h
loop.h
lp.h
lzo.h
m48t86.h
magic.h
major.h
map_to_7segment.h
maple.h
marker.h
math64.h
matroxfb.h
mbcache.h
mbus.h
mc6821.h
mc146818rtc.h
mca-legacy.h
mca.h
mdio-bitbang.h
mdio-gpio.h
memcontrol.h memcg: fix mem_cgroup_shrink_usage() 2009-05-02 15:36:09 -07:00
memory.h Merge branch 'tracing-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip 2009-04-05 11:04:19 -07:00
memory_hotplug.h
mempolicy.h
mempool.h
memstick.h
meye.h
mg_disk.h mflash: initial support 2009-04-07 08:12:38 +02:00
migrate.h
mii.h
minix_fs.h
miscdevice.h
mISDNdsp.h
mISDNhw.h
mISDNif.h
mm.h nommu: fix a number of issues with the per-MM VMA patch 2009-04-02 19:04:48 -07:00
mm_inline.h
mm_types.h
mman.h mm: fix Committed_AS underflow on large NR_CPUS environment 2009-05-02 15:36:10 -07:00
mmdebug.h
mmiotrace.h
mmtimer.h
mmu_notifier.h
mmzone.h Merge git://git.kernel.org/pub/scm/linux/kernel/git/rusty/linux-2.6-cpumask 2009-04-05 10:33:07 -07:00
mnt_namespace.h
mod_devicetable.h
module.h Merge branch 'tracing-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip 2009-04-05 11:04:19 -07:00
moduleloader.h
moduleparam.h
mount.h
mpage.h
mqueue.h
mroute.h
mroute6.h
msdos_fs.h
msg.h
msi.h
mtio.h
mutex-debug.h
mutex.h mutex: add atomic_dec_and_mutex_lock(), fix 2009-04-30 09:01:34 +02:00
mv643xx.h
mv643xx_eth.h
mv643xx_i2c.h
n_r3964.h
namei.h Switch open_exec() and sys_uselib() to do_open_filp() 2009-05-09 10:49:42 -04:00
nbd.h
ncp.h
ncp_fs.h
ncp_fs_i.h
ncp_fs_sb.h
ncp_mount.h
ncp_no.h
neighbour.h
net.h
net_dropmon.h
net_tstamp.h
netdevice.h net: Fix typo in net_device_ops description. 2009-04-27 05:45:54 -07:00
netfilter.h
netfilter_arp.h
netfilter_bridge.h
netfilter_decnet.h
netfilter_ipv4.h
netfilter_ipv6.h
netlink.h
netpoll.h
netrom.h
nfs.h nfsd41: define nfs41 error codes 2009-04-03 17:41:12 -07:00
nfs2.h
nfs3.h
nfs4.h nfsd41: CREATE_EXCLUSIVE4_1 2009-04-03 17:41:23 -07:00
nfs4_acl.h
nfs4_mount.h
nfs_fs.h NFS: nfs_readpage_async() needs to be accessible as a fallback for local caching 2009-04-03 16:42:44 +01:00
nfs_fs_i.h
nfs_fs_sb.h NFS: Define and create superblock-level objects 2009-04-03 16:42:42 +01:00
nfs_idmap.h
nfs_iostat.h NFS: Add some new I/O counters for FS-Cache doing things for NFS 2009-04-03 16:42:43 +01:00
nfs_mount.h
nfs_page.h
nfs_xdr.h
nfsacl.h
nfsd_idmap.h
nilfs2_fs.h nilfs2: support nanosecond timestamp 2009-04-07 08:31:20 -07:00
nl80211.h
nls.h nls: add a nls_nullsize inline 2009-04-30 15:32:11 +00:00
nmi.h
node.h
nodemask.h
notifier.h
nsc_gpio.h
nsproxy.h
nubus.h
numa.h
nvram.h
nwpserial.h
of.h
of_device.h
of_gpio.h
of_i2c.h
of_platform.h of: make of_(un)register_platform_driver common code 2009-05-02 15:36:10 -07:00
of_spi.h
oom.h
oprofile.h
oxu210hp.h
page-debug-flags.h
page-flags.h FS-Cache: Recruit a page flags for cache management 2009-04-03 16:42:36 +01:00
page-isolation.h
page_cgroup.h cgroups: use css id in swap cgroup for saving memory v5 2009-04-02 19:04:56 -07:00
pageblock-flags.h
pagemap.h CacheFiles: Permit the page lock state to be monitored 2009-04-03 16:42:39 +01:00
pagevec.h
param.h
parport.h
parport_pc.h parport: Use the PCI IRQ if offered 2009-04-07 08:44:06 -07:00
parser.h
patchkey.h
path.h
pci-acpi.h
pci-aspm.h
pci.h PCI: Setup disabled bridges even if buses are added 2009-04-06 11:25:06 -07:00
pci_hotplug.h
pci_ids.h intelfb: support i854 2009-04-13 15:04:32 -07:00
pci_regs.h PCI: only save/restore existent registers in the PCIe capability 2009-04-22 15:59:41 -07:00
pcieport_if.h
pda_power.h
percpu-defs.h PERCPU: Collect the DECLARE/DEFINE declarations together 2009-04-21 19:40:00 -07:00
percpu.h PERCPU: Collect the DECLARE/DEFINE declarations together 2009-04-21 19:40:00 -07:00
percpu_counter.h
perf_counter.h perf_counter: Fix race in attaching counters to tasks and exiting 2009-05-28 15:03:50 +02:00
personality.h
pfkeyv2.h
pfn.h
pg.h
phantom.h
phonedev.h
phonet.h
phy.h phylib: Allow early-out in phy_change 2009-04-13 14:51:23 -07:00
phy_fixed.h
pid.h
pid_namespace.h
pim.h
pipe_fs_i.h splice: add helpers for locking pipe inode 2009-04-15 12:10:12 +02:00
pkt_cls.h
pkt_sched.h
pktcdvd.h pktcdvd.h should include mempool.h 2009-04-24 08:54:21 +02:00
platform_device.h Revert driver core: move platform_data into platform_device 2009-05-08 19:22:21 -07:00
plist.h
pm.h
pm_qos_params.h
pm_wakeup.h
pmu.h
pnp.h
poison.h
poll.h
posix-timers.h
posix_acl.h
posix_acl_xattr.h
posix_types.h
power_supply.h
ppdev.h
ppp-comp.h
ppp_channel.h
ppp_defs.h
prctl.h
preempt.h
prefetch.h
prio_heap.h
prio_tree.h
proc_fs.h
profile.h
proportions.h
ptrace.h forget_original_parent: split out the un-ptrace part 2009-04-02 19:05:00 -07:00
pwm.h
pwm_backlight.h
qnx4_fs.h
qnxtypes.h
quicklist.h
quota.h
quotaops.h
radeonfb.h
radix-tree.h
raid_class.h
ramfs.h
random.h
ratelimit.h
raw.h
rbtree.h
rcuclassic.h kmemtrace, rcu: don't include unnecessary headers, allow kmemtrace w/ tracepoints 2009-04-03 12:23:05 +02:00
rculist.h
rculist_nulls.h
rcupdate.h kmemtrace, rcu: don't include unnecessary headers, allow kmemtrace w/ tracepoints 2009-04-03 12:23:05 +02:00
rcupreempt.h kmemtrace, rcu: don't include unnecessary headers, allow kmemtrace w/ tracepoints 2009-04-03 12:23:05 +02:00
rcupreempt_trace.h
rcutree.h rcu: Make hierarchical RCU less IPI-happy 2009-04-14 11:31:50 +02:00
rds.h
reboot.h
reciprocal_div.h
regset.h
reiserfs_acl.h
reiserfs_fs.h
reiserfs_fs_i.h
reiserfs_fs_sb.h reiserfs: remove privroot hiding in lookup 2009-05-09 10:49:39 -04:00
reiserfs_xattr.h reiserfs: fixup xattr_root caching 2009-05-09 10:49:39 -04:00
relay.h
res_counter.h
resource.h
resume-trace.h
rfkill.h
ring_buffer.h
rio.h
rio_drv.h
rio_ids.h
rio_regs.h
rmap.h
romfs_fs.h romfs: cleanup romfs_fs.h 2009-05-09 10:49:41 -04:00
root_dev.h
rose.h
rotary_encoder.h
route.h
rslib.h
rtc-v3020.h rtc-v3020: add ability to access v3020 chip with GPIOs 2009-04-02 19:04:51 -07:00
rtc.h
rtmutex.h
rtnetlink.h
rwsem-spinlock.h
rwsem.h
rxrpc.h
sc26198.h
scatterlist.h
scc.h
sched.h perf_counter: Change pctrl() behaviour 2009-05-24 08:24:08 +02:00
screen_info.h
sctp.h
scx200.h
scx200_gpio.h
sdla.h
seccomp.h <linux/seccomp.h> needs to include <linux/errno.h>. 2009-04-19 10:47:45 -07:00
section-names.h Add new HEAD_TEXT_SECTION macro. 2009-04-26 09:20:38 -07:00
securebits.h
security.h kmemtrace, fs, security: move alloc_secdata() and free_secdata() to linux/security.h 2009-04-03 12:08:57 +02:00
selection.h
selinux.h
selinux_netlink.h
sem.h
semaphore.h
seq_file.h
seq_file_net.h
seqlock.h
serial.h
serial167.h
serial_8250.h
serial_core.h Add support for the MAX3100 SPI UART. 2009-04-07 08:44:05 -07:00
serial_max3100.h tty: MAX3100 2009-04-08 14:33:38 -07:00
serial_pnx8xxx.h
serial_reg.h
serial_sci.h
serialP.h
serio.h
sh_cmt.h
sh_intc.h
shm.h
shmem_fs.h
sht15.h hwmon: sht15 humidity sensor driver 2009-04-13 15:04:29 -07:00
signal.h signals: implement sys_rt_tgsigqueueinfo 2009-04-30 19:24:24 +02:00
signalfd.h
skbuff.h
slab.h
slab_def.h kmemtrace: use tracepoints 2009-04-03 12:23:06 +02:00
slob_def.h
slow-work.h Trivial: fix a typo in slow-work.h 2009-04-21 19:40:00 -07:00
slub_def.h kmemtrace: use tracepoints 2009-04-03 12:23:06 +02:00
sm501-regs.h
sm501.h
smb.h
smb_fs.h
smb_fs_i.h
smb_fs_sb.h
smb_mount.h
smbno.h
smc91x.h
smc911x.h
smp.h
smp_lock.h
smsc911x.h
snmp.h
socket.h
sockios.h
som.h
sonet.h
sony-laptop.h
sonypi.h
sort.h
sound.h
soundcard.h
spinlock.h Allow rwlocks to re-enable interrupts 2009-04-02 19:05:11 -07:00
spinlock_api_smp.h
spinlock_api_up.h
spinlock_types.h
spinlock_types_up.h
spinlock_up.h
splice.h ocfs2: fix i_mutex locking in ocfs2_splice_to_file() 2009-04-15 12:10:12 +02:00
srcu.h
stackprotector.h
stacktrace.h
stallion.h
start_kernel.h
stat.h
statfs.h
stddef.h
stop_machine.h
string.h Merge git://git.kernel.org/pub/scm/linux/kernel/git/rusty/linux-2.6-module-and-param 2009-04-05 10:30:21 -07:00
string_helpers.h
stringify.h Make __stringify support variable argument macros too 2009-04-10 15:48:52 +02:00
superhyway.h
suspend.h PM/Suspend: Introduce two new platform callbacks to avoid breakage 2009-04-19 20:08:42 +02:00
suspend_ioctls.h
svga.h
swab.h
swap.h
swapops.h
swiotlb.h
synclink.h synclink_gt: add clock options 2009-04-02 19:05:01 -07:00
sys.h
syscalls.h Merge commit 'v2.6.30-rc6' into perfcounters/core 2009-05-18 07:37:49 +02:00
sysctl.h
sysdev.h
sysfs.h
sysrq.h
sysv_fs.h
task_io_accounting.h
task_io_accounting_ops.h
taskstats.h
taskstats_kern.h
tc.h
tcp.h
telephony.h
termios.h
textsearch.h
textsearch_fsm.h
tfrc.h
thermal.h
thread_info.h
threads.h
tick.h
tifm.h
time.h
timecompare.h
timer.h
timerfd.h
timeriomem-rng.h
times.h
timex.h
tiocl.h
tipc.h
tipc_config.h
topology.h
toshiba.h
tpm.h
trace_clock.h
tracehook.h tracehook_notify_death: use task_detached() helper 2009-04-02 19:05:00 -07:00
tracepoint.h
transport_class.h
trdevice.h
tsacct_kern.h
tty.h
tty_driver.h tty: Correct inline types for tty_driver_kref_get() 2009-04-07 08:44:04 -07:00
tty_flip.h
tty_ldisc.h
typecheck.h
types.h
uaccess.h
ucb1400.h
udf_fs_i.h
udp.h
uinput.h
uio.h
uio_driver.h
ultrasound.h
un.h
unistd.h
usb.h USB: add reset endpoint operations 2009-04-17 10:50:27 -07:00
usb_usual.h
usbdevice_fs.h
user.h
user_namespace.h
utime.h
uts.h
utsname.h
uwb.h
vermagic.h
veth.h
vfs.h
via.h
video_output.h
videodev.h
videodev2.h V4L/DVB (11387): Sensor orientation reporting 2009-04-06 21:44:29 -03:00
videotext.h
virtio.h
virtio_9p.h
virtio_balloon.h
virtio_blk.h
virtio_config.h
virtio_console.h
virtio_net.h virtio: add missing include to virtio_net.h 2009-05-01 15:34:02 -07:00
virtio_pci.h
virtio_ring.h
virtio_rng.h
vmalloc.h
vmstat.h
vt.h
vt_buffer.h
vt_kern.h
w1-gpio.h
wait.h net: Avoid extra wakeups of threads blocked in wait_for_packet() 2009-04-28 02:24:21 -07:00
wanrouter.h
watchdog.h
wimax.h
wireless.h
wlp.h
wm97xx.h
wm97xx_batt.h
workqueue.h workqueue: add to_delayed_work() helper function 2009-04-02 19:04:50 -07:00
writeback.h Revert "mm: add /proc controls for pdflush threads" 2009-05-15 11:32:24 +02:00
x25.h
xattr.h
xfrm.h
xilinxfb.h
yam.h
zconf.h
zlib.h
zorro.h
zorro_ids.h
zutil.h