android_kernel_xiaomi_sm8350/include/linux
Christoph Lameter 7340a0b152 this_cpu: Introduce this_cpu_ptr() and generic this_cpu_* operations
This patch introduces two things: First this_cpu_ptr and then per cpu
atomic operations.

this_cpu_ptr
------------

A common operation when dealing with cpu data is to get the instance of the
cpu data associated with the currently executing processor. This can be
optimized by

this_cpu_ptr(xx) = per_cpu_ptr(xx, smp_processor_id).

The problem with per_cpu_ptr(x, smp_processor_id) is that it requires
an array lookup to find the offset for the cpu. Processors typically
have the offset for the current cpu area in some kind of (arch dependent)
efficiently accessible register or memory location.

We can use that instead of doing the array lookup to speed up the
determination of the address of the percpu variable. This is particularly
significant because these lookups occur in performance critical paths
of the core kernel. this_cpu_ptr() can avoid memory accesses and

this_cpu_ptr comes in two flavors. The preemption context matters since we
are referring the the currently executing processor. In many cases we must
insure that the processor does not change while a code segment is executed.

__this_cpu_ptr 	-> Do not check for preemption context
this_cpu_ptr	-> Check preemption context

The parameter to these operations is a per cpu pointer. This can be the
address of a statically defined per cpu variable (&per_cpu_var(xxx)) or
the address of a per cpu variable allocated with the per cpu allocator.

per cpu atomic operations: this_cpu_*(var, val)
-----------------------------------------------
this_cpu_* operations (like this_cpu_add(struct->y, value) operate on
abitrary scalars that are members of structures allocated with the new
per cpu allocator. They can also operate on static per_cpu variables
if they are passed to per_cpu_var() (See patch to use this_cpu_*
operations for vm statistics).

These operations are guaranteed to be atomic vs preemption when modifying
the scalar. The calculation of the per cpu offset is also guaranteed to
be atomic at the same time. This means that a this_cpu_* operation can be
safely used to modify a per cpu variable in a context where interrupts are
enabled and preemption is allowed. Many architectures can perform such
a per cpu atomic operation with a single instruction.

Note that the atomicity here is different from regular atomic operations.
Atomicity is only guaranteed for data accessed from the currently executing
processor. Modifications from other processors are still possible. There
must be other guarantees that the per cpu data is not modified from another
processor when using these instruction. The per cpu atomicity is created
by the fact that the processor either executes and instruction or not.
Embedded in the instruction is the relocation of the per cpu address to
the are reserved for the current processor and the RMW action. Therefore
interrupts or preemption cannot occur in the mids of this processing.

Generic fallback functions are used if an arch does not define optimized
this_cpu operations. The functions come also come in the two flavors used
for this_cpu_ptr().

The firstparameter is a scalar that is a member of a structure allocated
through allocpercpu or a per cpu variable (use per_cpu_var(xxx)). The
operations are similar to what percpu_add() and friends do.

this_cpu_read(scalar)
this_cpu_write(scalar, value)
this_cpu_add(scale, value)
this_cpu_sub(scalar, value)
this_cpu_inc(scalar)
this_cpu_dec(scalar)
this_cpu_and(scalar, value)
this_cpu_or(scalar, value)
this_cpu_xor(scalar, value)

Arch code can override the generic functions and provide optimized atomic
per cpu operations. These atomic operations must provide both the relocation
(x86 does it through a segment override) and the operation on the data in a
single instruction. Otherwise preempt needs to be disabled and there is no
gain from providing arch implementations.

A third variant is provided prefixed by irqsafe_. These variants are safe
against hardware interrupts on the *same* processor (all per cpu atomic
primitives are *always* *only* providing safety for code running on the
*same* processor!). The increment needs to be implemented by the hardware
in such a way that it is a single RMW instruction that is either processed
before or after an interrupt.

cc: David Howells <dhowells@redhat.com>
cc: Ingo Molnar <mingo@elte.hu>
cc: Rusty Russell <rusty@rustcorp.com.au>
cc: Eric Dumazet <dada1@cosmosbay.com>
Signed-off-by: Christoph Lameter <cl@linux-foundation.org>
Signed-off-by: Tejun Heo <tj@kernel.org>
2009-10-03 19:48:22 +09:00
..
amba ARM: 5720/1: Move MMCI header to amba include dir 2009-09-22 20:49:04 +01:00
byteorder
can
decompress
dvb V4L/DVB (12997): Add the DTV_ISDB_TS_ID property for ISDB_S 2009-09-19 00:51:34 -03:00
hdlc
i2c Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input 2009-09-23 15:39:36 -07:00
input
isdn
lockd Merge branch 'for-2.6.32' of git://linux-nfs.org/~bfields/linux 2009-09-22 07:54:33 -07:00
mfd Merge branch 'for-linus' of git://git.o-hand.com/linux-rpurdie-leds 2009-09-26 10:50:47 -07:00
mlx4
mmc mmc: make SDIO device/driver struct accessors public 2009-09-23 07:39:38 -07:00
mtd Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6 2009-09-20 05:55:36 -07:00
netfilter
netfilter_arp
netfilter_bridge
netfilter_ipv4
netfilter_ipv6
nfsd seq_file: constify seq_operations 2009-09-23 07:39:29 -07:00
raid
regulator regulator/driver: be more specific in nanodoc for is_enabled 2009-09-22 13:32:45 +01:00
rtc
spi Merge branch 'for-linus' of git://git.o-hand.com/linux-rpurdie-backlight 2009-09-26 10:49:42 -07:00
ssb
sunrpc sunrpc: xdr_xcode_hyper helpers cannot presume 64-bit alignment 2009-09-23 14:36:38 -04:00
tc_act
tc_ematch
unaligned include/linux/unaligned/{l,b}e_byteshift.h: fix usage for compressed kernels 2009-09-24 07:21:05 -07:00
usb Merge branch 'master' of /home/davem/src/GIT/linux-2.6/ 2009-09-24 15:13:11 -07:00
uwb
wimax
8250_pci.h
a.out.h
ac97_codec.h
acct.h
acpi_pmtmr.h
acpi.h Merge branch 'misc-2.6.32' into release 2009-09-19 02:14:45 -04:00
adb.h
adfs_fs.h
aer.h
affs_hardblocks.h
agp_backend.h const: mark struct vm_struct_operations 2009-09-27 11:39:25 -07:00
agpgart.h
aio_abi.h
aio.h includecheck fix: include/linux, aio.h 2009-09-20 16:09:20 +05:30
amifd.h
amifdreg.h
amigaffs.h
anon_inodes.h anonfd: split interface into file creation and install 2009-09-23 07:39:29 -07:00
apm_bios.h
apm-emulation.h
arcdevice.h
arcfb.h
async_tx.h
async.h
ata_platform.h
ata.h
atalk.h
ath9k_platform.h
atm_eni.h
atm_he.h
atm_idt77105.h
atm_nicstar.h
atm_suni.h
atm_tcp.h
atm_zatm.h
atm.h
atmapi.h
atmarp.h
atmbr2684.h
atmclip.h
atmdev.h net: Make setsockopt() optlen be unsigned. 2009-09-30 16:12:20 -07:00
atmel_pdc.h
atmel_pwm.h
atmel_serial.h
atmel_tc.h
atmel-mci.h
atmel-pwm-bl.h
atmel-ssc.h
atmioc.h
atmlec.h
atmmpc.h
atmppp.h
atmsap.h
atmsvc.h
attribute_container.h driver model: constify attribute groups 2009-09-15 09:50:47 -07:00
audit.h
auto_dev-ioctl.h
auto_fs4.h
auto_fs.h
auxvec.h
ax25.h
b1lli.h
b1pcmcia.h
backing-dev.h writeback: pass in super_block to bdi_start_writeback() 2009-09-26 00:10:40 +02:00
backlight.h backlight: Allow drivers to update the core, and generate events on changes 2009-09-21 21:03:58 +01:00
baycom.h
bcd.h
bfs_fs.h
binfmts.h exec: fix set_binfmt() vs sys_delete_module() race 2009-09-24 07:21:01 -07:00
bio.h bio: first step in sanitizing the bio->bi_rw flag testing 2009-09-11 14:33:31 +02:00
bit_spinlock.h
bitmap.h
bitops.h
bitrev.h
blk-iopoll.h block: make blk_iopoll_prep_sched() follow normal 0/1 return convention 2009-09-11 14:33:32 +02:00
blkdev.h block: use blkdev_issue_discard in blk_ioctl_discard 2009-09-14 08:24:53 +02:00
blkpg.h
blktrace_api.h
blockgroup_lock.h
bootmem.h mm: also use alloc_large_system_hash() for the PID hash table 2009-09-22 07:17:38 -07:00
bottom_half.h
bpqether.h
brcmphy.h
bsg.h
buffer_head.h
bug.h
c2port.h
cache.h
can.h
capability.h trivial: change address of the libcap source. 2009-09-21 15:14:51 +02:00
capi.h
cb710.h
cciss_ioctl.h
cd1400.h
cdev.h
cdk.h
cdrom.h
cfag12864b.h
cgroup_subsys.h
cgroup.h const: constify remaining file_operations 2009-10-01 16:11:11 -07:00
cgroupstats.h
chio.h
circ_buf.h
clk.h
clockchips.h
clocksource.h
cm4000_cs.h
cn_proc.h proc connector: add event for process becoming session leader 2009-09-23 07:39:29 -07:00
cnt32_to_63.h
coda_cache.h
coda_fs_i.h
coda_linux.h
coda_psdev.h
coda.h
coff.h
com20020.h
compat.h
compiler-gcc3.h
compiler-gcc4.h
compiler-gcc.h
compiler-intel.h
compiler.h
completion.h
comstats.h
concap.h
configfs.h docs: fix various Documentation/ paths in header files 2009-09-24 07:20:57 -07:00
connector.h
console_struct.h
console.h
consolemap.h
const.h
cpu.h
cpufreq.h
cpuidle.h
cpumask.h cpumask: Move deprecated functions to end of header. 2009-09-24 09:34:53 +09:30
cpuset.h
cramfs_fs_sb.h
cramfs_fs.h
crash_dump.h
crc7.h
crc16.h
crc32.h
crc32c.h
crc-ccitt.h
crc-itu-t.h
crc-t10dif.h
cred.h include/linux/cred.h: fix build 2009-09-23 11:01:25 -07:00
crypto.h
cryptohash.h
ctype.h
cuda.h
cyclades.h serial: move delta_msr_wait into the tty_port 2009-09-19 13:13:31 -07:00
cyclomx.h
cycx_cfm.h
cycx_drv.h
cycx_x25.h
dca.h dca: registering requesters in multiple dca domains 2009-09-10 10:00:05 -07:00
dcache.h
dcbnl.h
dccp.h
dcookies.h
debug_locks.h
debugfs.h docs: fix various Documentation/ paths in header files 2009-09-24 07:20:57 -07:00
debugobjects.h
delay.h
delayacct.h headers: taskstats_kern.h trim 2009-09-18 09:48:52 -07:00
device_cgroup.h
device-mapper.h
device.h Driver-Core: extend devnode callbacks to provide permissions 2009-09-19 12:50:38 -07:00
devpts_fs.h
dio.h
dirent.h
display.h
dlm_device.h
dlm_netlink.h
dlm_plock.h
dlm.h
dlmconstants.h
dm9000.h
dm-dirty-log.h
dm-io.h
dm-ioctl.h
dm-kcopyd.h
dm-log-userspace.h
dm-region-hash.h
dma_remapping.h
dma-attrs.h
dma-debug.h
dma-mapping.h
dmaengine.h
dmapool.h
dmar.h
dmi.h
dn.h
dnotify.h
dqblk_qtree.h
dqblk_v1.h
dqblk_v2.h
dqblk_xfs.h
ds1286.h
ds17287rtc.h
dst.h
dtlk.h cleanup console_print() 2009-09-14 17:41:42 -07:00
dw_dmac.h
dynamic_debug.h
edac.h
edd.h
eeprom_93cx6.h
efi.h
efs_fs_sb.h
efs_vh.h
eisa.h
elevator.h
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 anonfd: split interface into file creation and install 2009-09-23 07:39:29 -07:00
eventpoll.h
exportfs.h
ext2_fs_sb.h
ext2_fs.h
ext3_fs_i.h
ext3_fs_sb.h
ext3_fs.h
ext3_jbd.h
f75375s.h
fadvise.h
falloc.h
fault-inject.h
fb.h [ARM] pxafb: add accelerator ID for PXA3xx GCU 2009-09-12 00:16:27 +08:00
fcdevice.h
fcntl.h
fd.h
fddidevice.h
fdreg.h
fdtable.h
fib_rules.h
fiemap.h
file.h
filter.h
fips.h
firewire-cdev.h
firewire-constants.h
firewire.h firewire: core: header file cleanup 2009-09-12 14:48:40 +02:00
firmware-map.h
firmware.h
flat.h
flex_array.h flex_array: introduce DEFINE_FLEX_ARRAY 2009-09-22 07:17:47 -07:00
font.h
freezer.h
fs_enet_pd.h
fs_stack.h
fs_struct.h
fs_uart_pd.h
fs.h const: constify remaining file_operations 2009-10-01 16:11:11 -07:00
fscache-cache.h
fscache.h
fsl_devices.h
fsnotify_backend.h
fsnotify.h
ftrace_event.h tracing: Allocate the ftrace event profile buffer dynamically 2009-09-18 07:25:44 +02:00
ftrace_irq.h
ftrace.h sysctl: remove "struct file *" argument of ->proc_handler 2009-09-24 07:21:04 -07:00
fuse.h
futex.h linux/futex.h: place kernel types behind __KERNEL__ 2009-09-24 07:21:04 -07:00
gameport.h
gcd.h
gen_stats.h
genalloc.h
generic_acl.h
generic_serial.h
genetlink.h
genhd.h const: make block_device_operations const 2009-09-22 07:17:25 -07:00
getcpu.h
gfp.h BUILD_BUG_ON(): fix it and a couple of bogus uses of it 2009-09-23 07:39:29 -07:00
gfs2_ondisk.h
gigaset_dev.h
gpio_keys.h
gpio_mouse.h
gpio.h gpiolib: allow exported GPIO nodes to be named using sysfs links 2009-09-23 07:39:46 -07:00
hardirq.h Merge branch 'sched-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip 2009-09-11 13:23:18 -07:00
hash.h
hayesesp.h serial: move delta_msr_wait into the tty_port 2009-09-19 13:13:31 -07:00
hdlc.h
hdlcdrv.h
hdpu_features.h
hdreg.h
hid-debug.h
hid.h HID: consolidate connect and disconnect into core code 2009-09-17 15:15:11 +02:00
hiddev.h
hidraw.h
highmem.h
highuid.h
hil_mlc.h
hil.h
hippidevice.h
hp_sdc.h
hpet.h
hrtimer.h
htirq.h
hugetlb.h const: mark struct vm_struct_operations 2009-09-27 11:39:25 -07: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 V4L/DVB (12974): SAA7164: Remove the SAA7164 bus id, no longer required. 2009-09-19 00:16:14 -03:00
i2c-ocores.h
i2c-pca-platform.h
i2c-pnx.h
i2c-pxa.h
i2c.h i2c: Drop unused i2c_driver.id field 2009-09-18 22:45:43 +02:00
i2o-dev.h
i2o.h
i8k.h
i7300_idle.h
i8042.h Input: libps2 - additional locking for i8042 ports 2009-09-17 23:23:45 -07:00
ibmtr.h
icmp.h
icmpv6.h
ide.h
idr.h
ieee80211.h
if_addr.h ipv6: Add IFA_F_DADFAILED flag 2009-09-11 12:54:58 -07:00
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 Revert "sit: stateless autoconf for isatap" 2009-09-26 20:28:07 -07:00
if_vlan.h
if.h
igmp.h bonding: remap muticast addresses without using dev_close() and dev_open() 2009-09-15 02:37:40 -07:00
ihex.h
ima.h
in6.h
in_route.h
in.h
inet_diag.h
inet_lro.h
inet.h
inetdevice.h
init_ohci1394_dma.h
init_task.h perf: Do the big rename: Performance Counters -> Performance Events 2009-09-21 14:28:04 +02:00
init.h
initrd.h
inotify.h
input-polldev.h
input.h Input: add generic suspend and resume for input devices 2009-09-17 23:23:58 -07:00
intel-iommu.h intel-iommu: Fix kernel hang if interrupt remapping disabled in BIOS 2009-09-11 16:40:10 +01:00
interrupt.h cpumask: Remove mask field from comments 2009-09-24 09:34:38 +09:30
io-mapping.h
io.h
ioc3.h
ioc4.h
iocontext.h
ioctl.h
iommu-helper.h
iommu.h
ioport.h walk system ram range 2009-09-23 07:39:41 -07:00
ioprio.h
iova.h
ip6_tunnel.h
ip_vs.h
ip.h
ipc_namespace.h
ipc.h headers: kref.h redux 2009-09-26 10:17:19 -07:00
ipmi_msgdefs.h
ipmi_smi.h
ipmi.h
ipsec.h
ipv6_route.h
ipv6.h
ipx.h
irda.h
irq_cpustat.h
irq.h Merge branch 'irq-threaded-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip 2009-09-11 13:21:31 -07:00
irqflags.h
irqnr.h
irqreturn.h
isa.h
isapnp.h
iscsi_ibft.h
isdn_divertif.h
isdn_ppp.h
isdn.h
isdnif.h
isicom.h
iso_fs.h
istallion.h
ivtv.h
ivtvfb.h
ixjuser.h
jbd2.h jbd2: Use tracepoints for history file 2009-09-30 00:32:06 -04:00
jbd.h jbd.h: bitfields should be unsigned 2009-09-23 07:39:58 -07:00
jffs2.h
jhash.h
jiffies.h
journal-head.h
joystick.h
kallsyms.h
kbd_diacr.h
kbd_kern.h
Kbuild KVM: export kvm_para.h 2009-09-10 10:46:47 +03:00
kbuild.h
kd.h
kdebug.h
kdev_t.h
kernel_stat.h
kernel.h Make sure the value in abs() does not get truncated if it is greater than 2^32 2009-09-23 07:39:30 -07:00
kernelcapi.h
kexec.h
key-type.h
key.h
keyboard.h
keyctl.h
kfifo.h kfifo: Use "const" definitions 2009-09-19 13:13:17 -07:00
kgdb.h
klist.h
kmalloc_sizes.h
kmemcheck.h BUILD_BUG_ON(): fix it and a couple of bogus uses of it 2009-09-23 07:39:29 -07:00
kmemleak.h
kmemtrace.h
kmod.h
kobj_map.h
kobject.h
kprobes.h tracing: remove notrace from __kprobes annotation 2009-09-15 23:51:31 -04:00
kref.h headers: kref.h redux 2009-09-26 10:17:19 -07:00
ks0108.h
ksm.h ksm: clean up obsolete references 2009-09-22 07:17:33 -07:00
kthread.h
ktime.h
kvm_host.h tracing: Remove markers 2009-09-18 21:22:08 +02:00
kvm_para.h KVM: x86: Disallow hypercalls for guest callers in rings > 0 2009-09-10 08:33:20 +03:00
kvm_types.h
kvm.h KVM: VMX: Introduce KVM_SET_IDENTITY_MAP_ADDR ioctl 2009-09-10 08:33:16 +03:00
lapb.h
latencytop.h
lcd.h
leds_pwm.h
leds-bd2802.h
leds-lp3944.h
leds-pca9532.h
leds.h
lguest_launcher.h
lguest.h
libata.h
libps2.h Input: libps2 - additional locking for i8042 ports 2009-09-17 23:23:45 -07:00
license.h
limits.h
linkage.h kbuild: Don't define ALIGN and ENTRY when preprocessing linker scripts. 2009-09-21 06:27:08 +02:00
linux_logo.h
lis3lv02d.h lis3: add free-fall/wakeup function via platform_data 2009-09-22 07:17:48 -07:00
list_nulls.h
list.h
llc.h
lmb.h
lockdep.h
log2.h
loop.h
lp.h
lsm_audit.h
lzo.h
m48t86.h
magic.h ramfs: move RAMFS_MAGIC to include/linux/magic.h 2009-09-23 07:39:42 -07:00
major.h
map_to_7segment.h
maple.h
math64.h
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
memcontrol.h memory controller: soft limit reclaim on contention 2009-09-24 07:20:59 -07:00
memory_hotplug.h walk system ram range 2009-09-23 07:39:41 -07:00
memory.h
mempolicy.h
mempool.h mm: remove broken 'kzalloc' mempool 2009-09-22 07:17:35 -07:00
memstick.h
meye.h
mg_disk.h
migrate.h
mii.h
minix_fs.h
miscdevice.h Driver-Core: extend devnode callbacks to provide permissions 2009-09-19 12:50:38 -07:00
mISDNdsp.h
mISDNhw.h
mISDNif.h trivial: fix typos "man[ae]g?ment" -> "management" 2009-09-21 15:14:56 +02:00
mm_inline.h mm: return boolean from page_is_file_cache() 2009-09-22 07:17:37 -07:00
mm_types.h const: mark struct vm_struct_operations 2009-09-27 11:39:25 -07:00
mm.h NOMMU: Fallback for is_vmalloc_or_module_addr() should be inline 2009-09-24 17:20:20 -07:00
mman.h
mmdebug.h
mmiotrace.h
mmtimer.h
mmu_context.h mm: move use_mm/unuse_mm from aio.c to mm/ 2009-09-22 07:17:42 -07:00
mmu_notifier.h ksm: add mmu_notifier set_pte_at_notify() 2009-09-22 07:17:31 -07:00
mmzone.h sysctl: remove "struct file *" argument of ->proc_handler 2009-09-24 07:21:04 -07:00
mnt_namespace.h
mod_devicetable.h spi: prefix modalias with "spi:" 2009-09-23 07:39:43 -07:00
module.h module: preferred way to use MODULE_AUTHOR 2009-09-25 00:32:58 +09:30
moduleloader.h
moduleparam.h
mount.h
mpage.h
mqueue.h
mroute6.h net: Make setsockopt() optlen be unsigned. 2009-09-30 16:12:20 -07:00
mroute.h net: Make setsockopt() optlen be unsigned. 2009-09-30 16:12:20 -07:00
msdos_fs.h
msg.h
msi.h
mtio.h
mutex-debug.h
mutex.h
mv643xx_eth.h
mv643xx_i2c.h
mv643xx.h
n_r3964.h
namei.h trivial: fix typo in namei.h comment 2009-09-21 15:14:51 +02:00
nbd.h
ncp_fs_i.h
ncp_fs_sb.h
ncp_fs.h
ncp_mount.h
ncp_no.h
ncp.h
neighbour.h
net_dropmon.h
net_tstamp.h
net.h net: Make setsockopt() optlen be unsigned. 2009-09-30 16:12:20 -07:00
netdevice.h Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6 2009-09-17 20:53:52 -07:00
netfilter_arp.h
netfilter_bridge.h
netfilter_decnet.h
netfilter_ipv4.h
netfilter_ipv6.h
netfilter.h net: Make setsockopt() optlen be unsigned. 2009-09-30 16:12:20 -07:00
netlink.h genetlink: fix netns vs. netlink table locking (2) 2009-09-24 15:44:05 -07:00
netpoll.h
netrom.h
nfs2.h
nfs3.h
nfs4_acl.h
nfs4_mount.h
nfs4.h Merge branch 'for-2.6.32' of git://linux-nfs.org/~bfields/linux 2009-09-22 07:54:33 -07:00
nfs_fs_i.h
nfs_fs_sb.h
nfs_fs.h headers: kref.h redux 2009-09-26 10:17:19 -07:00
nfs_idmap.h
nfs_iostat.h
nfs_mount.h
nfs_page.h
nfs_xdr.h
nfs.h
nfsacl.h
nfsd_idmap.h
nilfs2_fs.h
nl80211.h
nl802154.h
nls.h
nmi.h
node.h
nodemask.h
notifier.h bonding: remap muticast addresses without using dev_close() and dev_open() 2009-09-15 02:37:40 -07:00
nsc_gpio.h
nsproxy.h
nubus.h
numa.h
nvram.h
nwpserial.h
of_device.h
of_gpio.h
of_i2c.h
of_mdio.h
of_platform.h
of_spi.h
of.h
oom.h oom: move oom_killer_enable()/oom_killer_disable to where they belong 2009-09-22 07:17:38 -07:00
oprofile.h
oxu210hp.h
page_cgroup.h memcg: remove the overhead associated with the root cgroup 2009-09-24 07:20:58 -07:00
page-debug-flags.h
page-flags.h Merge branch 'hwpoison' of git://git.kernel.org/pub/scm/linux/kernel/git/ak/linux-mce-2.6 2009-09-24 07:53:22 -07:00
page-isolation.h
pageblock-flags.h
pagemap.h
pagevec.h
param.h
parport_pc.h
parport.h
parser.h
patchkey.h
path.h
pci_hotplug.h PCI hotplug: acpiphp: use generic pci_configure_slot() 2009-09-14 17:39:12 -07:00
pci_ids.h Merge branch 'for-linus' of git://neil.brown.name/md 2009-09-24 07:55:29 -07:00
pci_regs.h uio: add generic driver for PCI 2.3 devices 2009-09-15 09:50:48 -07:00
pci-acpi.h
pci-aspm.h
pci.h
pcieport_if.h
pda_power.h
percpu_counter.h
percpu-defs.h Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/percpu 2009-09-15 09:39:44 -07:00
percpu.h this_cpu: Introduce this_cpu_ptr() and generic this_cpu_* operations 2009-10-03 19:48:22 +09:00
perf_counter.h perf_event: Update PERF_EVENT_FORK header definition 2009-09-22 15:42:01 +02:00
perf_event.h perf_event: Update PERF_EVENT_FORK header definition 2009-09-22 15:42:01 +02:00
personality.h
pfkeyv2.h
pfn.h
pg.h
phantom.h
phonedev.h
phonet.h Phonet: error on broadcast sending (unimplemented) 2009-09-24 15:38:57 -07:00
phy_fixed.h
phy.h
pid_namespace.h
pid.h
pim.h
pipe_fs_i.h
pkt_cls.h
pkt_sched.h
pktcdvd.h
platform_device.h
plist.h
pm_qos_params.h
pm_runtime.h
pm_wakeup.h
pm.h PM: Add convenience macro to make switching to dev_pm_ops less error-prone 2009-09-14 20:27:00 +02:00
pmu.h
pnp.h pnp: add a shutdown method to pnp drivers 2009-09-22 07:17:49 -07:00
poison.h flex_array: poison free elements 2009-09-22 07:17:47 -07:00
poll.h
posix_acl_xattr.h
posix_acl.h
posix_types.h
posix-timers.h
power_supply.h
ppdev.h
ppp_channel.h
ppp_defs.h
ppp-comp.h
pps_kernel.h
pps.h
prctl.h Merge branch 'hwpoison' of git://git.kernel.org/pub/scm/linux/kernel/git/ak/linux-mce-2.6 2009-09-24 07:53:22 -07:00
preempt.h
prefetch.h
prio_heap.h
prio_tree.h
proc_fs.h kcore: register vmemmap range 2009-09-23 07:39:41 -07:00
profile.h
proportions.h
ptrace.h
pwm_backlight.h
pwm.h
qnx4_fs.h
qnxtypes.h
quicklist.h
quota.h
quotaops.h const: make struct super_block::s_qcop const 2009-09-22 07:17:24 -07:00
radeonfb.h
radix-tree.h
raid_class.h
ramfs.h const: mark struct vm_struct_operations 2009-09-27 11:39:25 -07:00
random.h
ratelimit.h
rational.h
raw.h
rbtree.h
rculist_nulls.h rcu: Fix whitespace inconsistencies 2009-09-19 08:53:22 +02:00
rculist.h
rcupdate.h rcu: Fix whitespace inconsistencies 2009-09-19 08:53:22 +02:00
rcutree.h rcu: Fix whitespace inconsistencies 2009-09-19 08:53:22 +02:00
rds.h
reboot.h
reciprocal_div.h
regset.h
reiserfs_acl.h
reiserfs_fs_i.h
reiserfs_fs_sb.h
reiserfs_fs.h
reiserfs_xattr.h
relay.h docs: fix various Documentation/ paths in header files 2009-09-24 07:20:57 -07:00
res_counter.h memcg: some modification to softlimit under hierarchical memory reclaim. 2009-10-01 16:11:13 -07:00
resource.h
resume-trace.h
rfkill.h
ring_buffer.h
rio_drv.h
rio_ids.h
rio_regs.h
rio.h
rmap.h Merge branch 'hwpoison' of git://git.kernel.org/pub/scm/linux/kernel/git/ak/linux-mce-2.6 2009-09-24 07:53:22 -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
rwsem-spinlock.h
rwsem.h
rxrpc.h RxRPC: Declare the security index constants symbolically 2009-09-15 02:44:17 -07:00
sc26198.h
scatterlist.h
scc.h
sched.h Merge branch 'hwpoison' of git://git.kernel.org/pub/scm/linux/kernel/git/ak/linux-mce-2.6 2009-09-24 07:53:22 -07:00
screen_info.h
sctp.h
scx200_gpio.h
scx200.h
sdla.h
seccomp.h
securebits.h
security.h sysctl: remove "struct file *" argument of ->proc_handler 2009-09-24 07:21:04 -07:00
selection.h
selinux_netlink.h
selinux.h SELinux: inline selinux_is_enabled in !CONFIG_SECURITY_SELINUX 2009-09-15 11:37:33 +10:00
sem.h
semaphore.h
seq_file_net.h
seq_file.h vfs: seq_file: add helpers for data filling 2009-09-24 07:47:35 -04:00
seqlock.h
serial167.h
serial_8250.h serial: 8250: add IRQ trigger support 2009-09-19 13:13:19 -07:00
serial_core.h MIPS: BCM63xx: Add serial driver for bcm63xx integrated UART. 2009-09-30 21:46:59 +02:00
serial_max3100.h
serial_pnx8xxx.h
serial_reg.h
serial_sci.h
serial.h serial: move the flags into the tty_port field 2009-09-19 13:13:30 -07:00
serialP.h
serio.h
sfi_acpi.h
sfi.h
sh_intc.h
sh_timer.h
shm.h
shmem_fs.h Driver Core: devtmpfs - kernel-maintained tmpfs-based /dev 2009-09-15 09:50:49 -07:00
sht15.h
signal.h signals: introduce do_send_sig_info() helper 2009-09-24 07:21:01 -07:00
signalfd.h
skbuff.h
slab_def.h
slab.h
slob_def.h
slow-work.h
slub_def.h Merge branches 'slab/cleanups' and 'slab/fixes' into for-linus 2009-09-14 20:19:06 +03:00
sm501-regs.h
sm501.h
smb_fs_i.h
smb_fs_sb.h
smb_fs.h
smb_mount.h
smb.h
smbno.h
smc91x.h
smc911x.h
smp_lock.h
smp.h cpumask: remove the deprecated smp_call_function_mask() 2009-09-24 09:34:40 +09:30
smsc911x.h
snmp.h
socket.h
sockios.h
som.h
sonet.h
sony-laptop.h
sonypi.h
sort.h
sound.h
soundcard.h
spinlock_api_smp.h
spinlock_api_up.h
spinlock_types_up.h
spinlock_types.h
spinlock_up.h
spinlock.h
splice.h
srcu.h
stackprotector.h
stacktrace.h
stallion.h
start_kernel.h
stat.h
statfs.h
stddef.h
stop_machine.h
string_helpers.h
string.h
stringify.h
superhyway.h
suspend_ioctls.h
suspend.h
svga.h
swab.h
swap.h Merge branch 'hwpoison' of git://git.kernel.org/pub/scm/linux/kernel/git/ak/linux-mce-2.6 2009-09-24 07:53:22 -07:00
swapops.h HWPOISON: Add support for poison swap entries v2 2009-09-16 11:50:05 +02:00
swiotlb.h
synclink.h
sys.h
syscalls.h fs: change sys_truncate length parameter type 2009-09-23 09:21:05 -07:00
sysctl.h sysctl: remove "struct file *" argument of ->proc_handler 2009-09-24 07:21:04 -07:00
sysdev.h
sysfs.h
sysrq.h
sysv_fs.h
task_io_accounting_ops.h
task_io_accounting.h
taskstats_kern.h headers: taskstats_kern.h trim 2009-09-18 09:48:52 -07:00
taskstats.h
tboot.h
tc.h
tcp.h
telephony.h
termios.h
textsearch_fsm.h
textsearch.h
tfrc.h
thermal.h
thread_info.h
threads.h
tick.h
tifm.h
time.h time: add function to convert between calendar time and broken-down time for universal use 2009-09-24 07:20:56 -07:00
timecompare.h
timer.h
timerfd.h
timeriomem-rng.h
times.h
timex.h
tiocl.h
tipc_config.h
tipc.h
topology.h cpumask: remove obsolete topology_core_siblings and topology_thread_siblings: core 2009-09-24 09:34:41 +09:30
toshiba.h
tpm.h
trace_clock.h
trace_seq.h
tracehook.h signals: tracehook_notify_jctl change 2009-09-24 07:21:00 -07:00
tracepoint.h docs: fix various Documentation/ paths in header files 2009-09-24 07:20:57 -07:00
transport_class.h driver model: constify attribute groups 2009-09-15 09:50:47 -07:00
trdevice.h
tsacct_kern.h
tty_driver.h tty: Fix regressions caused by commit b50989dc 2009-09-27 13:35:16 -07:00
tty_flip.h
tty_ldisc.h
tty.h tty: handle VT specific compat ioctls in vt driver 2009-09-19 13:13:35 -07:00
typecheck.h
types.h
uaccess.h
ucb1400.h mfd/gpio: add a GPIO interface to the UCB1400 MFD chip driver via gpiolib 2009-09-23 07:39:48 -07:00
udf_fs_i.h
udp.h
uinput.h
uio_driver.h
uio.h
ultrasound.h
un.h
unistd.h
usb_usual.h
usb.h USB: make intf.pm_usage an atomic_t 2009-09-23 06:46:23 -07:00
usbdevice_fs.h USB: usbfs: add USBDEVFS_URB_BULK_CONTINUATION flag 2009-09-23 06:46:39 -07:00
user_namespace.h
user.h
utime.h
uts.h
utsname.h headers: utsname.h redux 2009-09-23 18:13:10 -07:00
uwb.h
vermagic.h
veth.h
vfs.h
vgaarb.h Merge branch 'linux-next' of git://git.kernel.org/pub/scm/linux/kernel/git/jbarnes/pci-2.6 2009-09-24 09:57:08 -07:00
via.h
video_output.h
videodev2.h V4L/DVB (12511): V4L2: add a new V4L2_CID_BAND_STOP_FILTER integer control 2009-09-19 00:18:36 -03:00
videodev.h
videotext.h
virtio_9p.h virtio: add virtio IDs file 2009-09-23 22:26:32 +09:30
virtio_balloon.h virtio: add virtio IDs file 2009-09-23 22:26:32 +09:30
virtio_blk.h virtio_blk: add support for cache flush 2009-09-23 22:26:36 +09:30
virtio_config.h BUILD_BUG_ON(): fix it and a couple of bogus uses of it 2009-09-23 07:39:29 -07:00
virtio_console.h virtio: add virtio IDs file 2009-09-23 22:26:32 +09:30
virtio_ids.h virtio: add virtio IDs file 2009-09-23 22:26:32 +09:30
virtio_net.h virtio: add virtio IDs file 2009-09-23 22:26:32 +09:30
virtio_pci.h
virtio_ring.h
virtio_rng.h virtio: add virtio IDs file 2009-09-23 22:26:32 +09:30
virtio.h virtio: make add_buf return capacity remaining 2009-09-23 22:26:31 +09:30
vlynq.h
vmalloc.h
vmstat.h mm: count only reclaimable lru pages 2009-09-22 07:17:30 -07:00
vt_buffer.h
vt_kern.h vt: move kernel stuff out of vt.h 2009-09-19 13:13:25 -07:00
vt.h vt: add an activate and lock 2009-09-19 13:13:26 -07:00
w1-gpio.h
wait.h sched: Rename sync arguments 2009-09-15 16:51:30 +02:00
wanrouter.h
watchdog.h
wimax.h
wireless.h
wlp.h
wm97xx_batt.h
wm97xx.h Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6 2009-09-23 03:49:27 +04:00
workqueue.h Change "useing" -> "using". 2009-09-21 15:14:53 +02:00
writeback.h sysctl: remove "struct file *" argument of ->proc_handler 2009-09-24 07:21:04 -07:00
x25.h
xattr.h
xfrm.h
xilinxfb.h
yam.h
zconf.h
zlib.h
zorro_ids.h
zorro.h
zutil.h