remarkable-linux/include/linux
Steven Rostedt 17666f02b1 ftrace: nmi safe code modification
Impact: fix crashes that can occur in NMI handlers, if their code is modified

Modifying code is something that needs special care. On SMP boxes,
if code that is being modified is also being executed on another CPU,
that CPU will have undefined results.

The dynamic ftrace uses kstop_machine to make the system act like a
uniprocessor system. But this does not address NMIs, that can still
run on other CPUs.

One approach to handle this is to make all code that are used by NMIs
not be traced. But NMIs can call notifiers that spread throughout the
kernel and this will be very hard to maintain, and the chance of missing
a function is very high.

The approach that this patch takes is to have the NMIs modify the code
if the modification is taking place. The way this works is that just
writing to code executing on another CPU is not harmful if what is
written is the same as what exists.

Two buffers are used: an IP buffer and a "code" buffer.

The steps that the patcher takes are:

 1) Put in the instruction pointer into the IP buffer
    and the new code into the "code" buffer.
 2) Set a flag that says we are modifying code
 3) Wait for any running NMIs to finish.
 4) Write the code
 5) clear the flag.
 6) Wait for any running NMIs to finish.

If an NMI is executed, it will also write the pending code.
Multiple writes are OK, because what is being written is the same.
Then the patcher must wait for all running NMIs to finish before
going to the next line that must be patched.

This is basically the RCU approach to code modification.

Thanks to Ingo Molnar for suggesting the idea, and to Arjan van de Ven
for his guidence on what is safe and what is not.

Signed-off-by: Steven Rostedt <srostedt@redhat.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
2008-10-30 21:30:08 +01:00
..
amba
byteorder byteorder: provide swabb.h generically in asm/byteorder.h 2008-10-20 08:52:40 -07:00
can
dvb V4L/DVB (9196): Add support for DSS delivery 2008-10-17 17:15:43 -03:00
hdlc
i2c mfd: twl4030 IRQ handling update 2008-10-22 01:19:37 +02:00
isdn
lockd NLM: Remove "proto" argument from lockd_up() 2008-10-04 17:12:27 -04:00
mfd mfd: update TMIO drivers to use the clock API 2008-10-19 22:54:12 +02:00
mlx4 mlx4_core: Multiple port type support 2008-10-22 15:38:42 -07:00
mmc Fix comment in include/linux/mmc/host.h 2008-10-12 11:04:34 +02:00
mtd Merge git://git.infradead.org/mtd-2.6 2008-10-20 09:03:12 -07:00
netfilter netfilter: ctnetlink: remove bogus module dependency between ctnetlink and nf_nat 2008-10-14 11:58:31 -07:00
netfilter_arp
netfilter_bridge netfilter: xtables: move extension arguments into compound structure (5/6) 2008-10-08 11:35:19 +02:00
netfilter_ipv4 netfilter: rename ipt_recent to xt_recent 2008-10-08 11:35:00 +02:00
netfilter_ipv6
nfsd nfsd: permit unauthenticated stat of export root 2008-09-29 17:56:56 -04:00
raid md: use sysfs_notify_dirent to notify changes to md/dev-xxx/state 2008-10-21 13:25:28 +11:00
regulator regulator: Fix typo 2008-10-13 21:51:51 +01:00
rtc rtc-m48t59: allow externally mapped ioaddr 2008-09-03 15:41:57 -07:00
spi spi: fix compile error 2008-10-30 11:38:47 -07:00
ssb ssb: Clean up extraction of MAC addresses from SPROM 2008-08-29 16:24:07 -04:00
sunrpc Merge branch 'next' 2008-10-15 15:54:56 -04:00
tc_act pkt_action: add new action skbedit 2008-09-12 16:30:20 -07:00
tc_ematch
unaligned
usb Merge branch 'master' into for-upstream 2008-10-20 16:07:19 +01:00
uwb uwb: add the driver to enumerate WHCI capabilities 2008-09-17 16:54:26 +01:00
8250_pci.h
a.out.h
ac97_codec.h
acct.h
acpi.h ACPI: remove unused have_arch_parse_srat 2008-10-10 23:50:21 -04:00
acpi_pmtmr.h
adb.h
adfs_fs.h
adfs_fs_i.h
adfs_fs_sb.h
aer.h PCI: fix AER capability check 2008-10-20 11:01:52 -07:00
affs_hardblocks.h
agp_backend.h
agpgart.h
aio.h Configure out AIO support 2008-10-16 11:21:51 -07:00
aio_abi.h
amifd.h
amifdreg.h
amigaffs.h
anon_inodes.h
apm-emulation.h
apm_bios.h
arcdevice.h
arcfb.h
async_tx.h
ata.h ide: lba_capacity_is_ok() -> ata_id_is_lba_capacity_ok() 2008-10-10 22:39:31 +02:00
ata_platform.h
atalk.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-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 autofs4: add miscellaneous device for ioctls 2008-10-16 11:21:39 -07:00
auto_fs.h
auto_fs4.h autofs4: add miscellaneous device for ioctls 2008-10-16 11:21:39 -07:00
auxvec.h
ax25.h
b1lli.h
b1pcmcia.h
backing-dev.h vmscan: split LRU lists into anon & file sets 2008-10-20 08:50:25 -07:00
backlight.h
baycom.h
bcd.h include/linux/bcd.h: remove comments 2008-10-20 08:52:42 -07:00
bfs_fs.h
binfmts.h Allow recursion in binfmt_script and binfmt_misc 2008-10-16 11:21:38 -07:00
bio.h Merge branch 'for-linus' of git://git.kernel.dk/linux-2.6-block 2008-10-17 09:29:55 -07:00
bit_spinlock.h
bitmap.h Merge branch 'for-upstream' of git://git.kernel.org/pub/scm/linux/kernel/git/dvrabel/uwb 2008-10-23 08:20:34 -07:00
bitops.h
bitrev.h
blkdev.h [PATCH] end of methods switch: remove the old ones 2008-10-21 07:48:52 -04:00
blkpg.h
blktrace_api.h blktrace: add support for driver data 2008-10-17 08:46:57 +02:00
blockgroup_lock.h
bootmem.h
bottom_half.h
bpqether.h
brcmphy.h
bsg.h
buffer_head.h fs: buffer lock use lock bitops 2008-10-20 08:52:32 -07:00
bug.h
byteorder.h
cache.h
can.h
capability.h
capi.h
cciss_ioctl.h
cd1400.h
cdev.h
cdk.h
cdrom.h [PATCH] switch cdrom_{open,release,ioctl} to sane APIs 2008-10-21 07:47:22 -04:00
cfag12864b.h
cgroup.h cgroups: tiny cleanups 2008-10-30 11:38:45 -07:00
cgroup_subsys.h container freezer: implement freezer cgroup subsystem 2008-10-20 08:52:34 -07:00
cgroupstats.h
chio.h
circ_buf.h
clk.h include/linux/clk.h: fix comment 2008-10-16 11:21:32 -07:00
clockchips.h clockevents: prevent clockevent event_handler ending up handler_noop 2008-09-05 11:11:51 +02:00
clocksource.h clocksource: introduce CLOCK_MONOTONIC_RAW 2008-08-21 09:50:24 +02:00
cm4000_cs.h
cn_proc.h
cnt32_to_63.h MN10300: Move asm-arm/cnt32_to_63.h to include/linux/ 2008-09-24 16:38:17 -07:00
coda.h
coda_cache.h
coda_fs_i.h
coda_linux.h
coda_psdev.h
coff.h
com20020.h
compat.h compat: generic compat get/settimeofday 2008-10-16 11:21:33 -07:00
compiler-gcc.h
compiler-gcc3.h
compiler-gcc4.h
compiler-intel.h
compiler.h ftrace: move notrace to compiler.h 2008-10-14 10:35:08 +02:00
completion.h sched: add kernel doc for the completion, fix kernel-doc-nano-HOWTO.txt 2008-08-26 10:26:54 +02:00
comstats.h
concap.h
configfs.h
connector.h
console.h
console_struct.h Revert "vt: fix background color on line feed" 2008-10-14 12:12:02 -07:00
consolemap.h
const.h
cpu.h kernel/cpu.c: create a CPU_STARTING cpu_chain notifier 2008-09-08 19:25:24 +02:00
cpufreq.h [CPUFREQ][1/6] cpufreq: Add cpu number parameter to __cpufreq_driver_getavg() 2008-10-09 13:52:43 -04:00
cpuidle.h
cpumask.h
cpuset.h sched: arch_reinit_sched_domains() must destroy domains to force rebuild 2008-09-06 19:22:15 +02:00
cramfs_fs.h
cramfs_fs_sb.h
crash_dump.h proc: move /proc/vmcore creation to fs/proc/vmcore.c 2008-10-23 18:51:22 +04:00
crc-ccitt.h
crc-itu-t.h
crc-t10dif.h
crc7.h
crc16.h
crc32.h
crc32c.h
cred.h
crypto.h crypto: rng - RNG interface and implementation 2008-08-29 15:50:04 +10:00
cryptohash.h
ctype.h
cuda.h
cyclades.h
cyclomx.h
cycx_cfm.h
cycx_drv.h
cycx_x25.h
dca.h
dcache.h [PATCH vfs-2.6 2/6] vfs: add d_ancestor() 2008-10-23 05:13:16 -04:00
dccp.h This reverts "Merge branch 'dccp' of git://eden-feed.erg.abdn.ac.uk/dccp_exp" 2008-09-09 13:27:22 +02:00
dcookies.h
debug_locks.h
debugfs.h
debugobjects.h
delay.h
delayacct.h
device-mapper.h Merge git://git.kernel.org/pub/scm/linux/kernel/git/viro/bdev 2008-10-23 10:23:07 -07:00
device.h i2c: Constify i2c_get_clientdata's parameter 2008-10-22 20:21:31 +02:00
device_cgroup.h
devpts_fs.h Add an instance parameter devpts interfaces 2008-10-13 09:51:43 -07:00
dio.h
dirent.h
display.h
dlm.h dlm: allow multiple lockspace creates 2008-08-28 11:49:15 -05:00
dlm_device.h dlm: allow multiple lockspace creates 2008-08-28 11:49:15 -05:00
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 dm raid1: separate region_hash interface part1 2008-10-21 17:45:06 +01:00
dm9000.h
dma-attrs.h
dma-mapping.h convert swiotlb to use dma_get_mask 2008-09-19 10:20:41 +02:00
dma_remapping.h intel-iommu: IA64 support 2008-10-18 14:29:15 +01:00
dmaengine.h
dmapool.h
dmar.h dmar: fix using early fixmap mapping for DMAR table parsing 2008-10-16 16:53:04 +02:00
dmi.h Automatic MODULE_ALIAS() for DMI match tables. 2008-10-13 16:05:06 +01:00
dn.h
dnotify.h
dqblk_v1.h
dqblk_v2.h
dqblk_xfs.h
ds1wm.h
ds1286.h MIPS: IP22/28: Switch over to RTC class driver 2008-10-15 12:46:51 +01:00
ds17287rtc.h
dtlk.h
dw_dmac.h
dynamic_printk.h driver core: basic infrastructure for per-module dynamic debug messages 2008-10-16 09:24:47 -07:00
edac.h
edd.h
eeprom_93cx6.h
efi.h x86: Add UV EFI table entry v4 2008-10-16 16:53:13 +02:00
efs_fs_sb.h
efs_vh.h
eisa.h
elevator.h block: Add interface to abort queued requests 2008-10-09 08:56:13 +02:00
elf-em.h
elf-fdpic.h
elf.h x86: ioperm user_regset 2008-10-12 12:05:55 +02:00
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 Reserve NFS fileid values for btrfs 2008-08-20 13:19:51 -07:00
ext2_fs.h include: replace __FUNCTION__ with __func__ 2008-10-16 11:21:30 -07:00
ext2_fs_sb.h
ext3_fs.h ext3: add an option to control error handling on file data 2008-10-20 08:52:37 -07:00
ext3_fs_i.h
ext3_fs_sb.h
ext3_jbd.h include: replace __FUNCTION__ with __func__ 2008-10-16 11:21:30 -07:00
f75375s.h
fadvise.h
falloc.h
fault-inject.h
fb.h fb: convert lock/unlock_kernel() into local fb mutex 2008-10-20 08:52:36 -07:00
fcdevice.h
fcntl.h
fd.h floppy: support arbitrary first-sector numbers 2008-10-09 08:56:19 +02:00
fddidevice.h
fdreg.h
fdtable.h
fib_rules.h
fiemap.h vfs: vfs-level fiemap interface 2008-10-08 19:44:18 -04:00
file.h [PATCH] introduce fmode_t, do annotations 2008-10-21 07:47:06 -04:00
filter.h
firewire-cdev.h firewire: Add more documentation to firewire-cdev.h 2008-10-15 22:21:11 +02:00
firewire-constants.h
firmware-map.h
firmware.h
flat.h
font.h
freezer.h freezer_cg: use thaw_process() in unfreeze_cgroup() 2008-10-30 11:38:45 -07:00
fs.h fs: remove prepare_write/commit_write 2008-10-30 11:38:45 -07:00
fs_enet_pd.h
fs_stack.h
fs_struct.h
fs_uart_pd.h removed unused #include <linux/version.h>'s 2008-08-23 12:14:12 -07:00
fsl_devices.h
fsnotify.h [PATCH] introduce fmode_t, do annotations 2008-10-21 07:47:06 -04:00
ftrace.h ftrace: remove ftrace hash 2008-10-23 16:00:24 +02:00
fuse.h fuse: implement nonseekable open 2008-10-16 16:08:57 +02:00
futex.h
gameport.h
gen_stats.h
genalloc.h
generic_acl.h
generic_serial.h
genetlink.h
genhd.h proc: move /proc/diskstats boilerplate to block/genhd.c 2008-10-23 17:57:37 +04:00
getcpu.h
gfp.h
gfs2_ondisk.h GFS2: Add UUID to GFS2 sb 2008-09-22 07:29:31 +01:00
gigaset_dev.h
gpio.h gpio_free might sleep, generic part 2008-10-16 11:21:40 -07:00
gpio_keys.h
gpio_mouse.h
hardirq.h ftrace: nmi safe code modification 2008-10-30 21:30:08 +01:00
hash.h
hayesesp.h
hdlc.h
hdlcdrv.h
hdpu_features.h
hdreg.h
hid-debug.h
hid.h HID: fix oops during suspend of unbound HID devices 2008-10-27 15:06:01 +01:00
hiddev.h HID: hiddev.h: Fix example code. 2008-10-14 23:51:02 +02:00
hidraw.h
highmem.h
highuid.h
hil.h
hil_mlc.h
hippidevice.h
hp_sdc.h
hpet.h
hrtimer.h Merge branch 'timers/range-hrtimers' into v28-range-hrtimers-for-linus-v2 2008-10-22 09:48:06 +02:00
htirq.h
hugetlb.h proc: switch /proc/meminfo to seq_file 2008-10-23 13:52:40 +04: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-algo-pcf: Add adapter hooks around xfer begin and end 2008-10-22 20:21:30 +02:00
i2c-algo-sgi.h
i2c-dev.h
i2c-gpio.h
i2c-id.h V4L/DVB (9240): saa7127: Fix two typos 2008-10-17 17:25:11 -03:00
i2c-ocores.h
i2c-pca-platform.h
i2c-pnx.h
i2c-pxa.h
i2c.h i2c: Add info->archdata field 2008-10-22 20:21:33 +02:00
i2o-dev.h
i2o.h i2o: Fix 32/64bit DMA locking 2008-10-16 11:21:38 -07:00
i8k.h
i7300_idle.h i7300_idle: Disable ioat channel only on platforms where ile driver can load 2008-10-24 12:54:18 -04:00
i8042.h
ibmtr.h
icmp.h
icmpv6.h IPV6: Fix default gateway criteria wrt. HIGH/LOW preference radv option 2008-10-15 16:03:01 -07:00
ide.h [PATCH] switch ide_disk_ops ->ioctl() to sane prototype 2008-10-21 07:47:30 -04:00
idr.h
ieee80211.h mac80211: mesh portal functionality support 2008-09-24 16:18:02 -04:00
if.h net: network device name ifalias support 2008-09-22 21:28:11 -07:00
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 net: Rationalise email address: Network Specific Parts 2008-10-13 19:01:08 -07:00
if_fc.h
if_fddi.h net: Rationalise email address: Network Specific Parts 2008-10-13 19:01:08 -07:00
if_frad.h
if_hippi.h net: Rationalise email address: Network Specific Parts 2008-10-13 19:01:08 -07:00
if_infiniband.h
if_link.h net: network device name ifalias support 2008-09-22 21:28:11 -07:00
if_ltalk.h
if_macvlan.h
if_packet.h
if_phonet.h phonet: Protect if_phonet.h against multiple inclusions. 2008-10-01 01:30:19 -07:00
if_plip.h
if_ppp.h
if_pppol2tp.h
if_pppox.h
if_slip.h
if_strip.h
if_tr.h
if_tun.h tun: TUNGETIFF interface to query name and flags 2008-08-15 19:52:19 -07:00
if_tunnel.h gre: Add netlink interface 2008-10-09 11:59:55 -07:00
if_vlan.h
igmp.h net: Rationalise email address: Network Specific Parts 2008-10-13 19:01:08 -07:00
ihex.h
in.h ipv4: Implement IP_TRANSPARENT socket option 2008-10-01 07:30:02 -07:00
in6.h
in_route.h
inet.h
inet_diag.h
inet_lro.h
inetdevice.h ipv4: add mc_count to in_device. 2008-10-07 15:34:37 -07:00
init.h Merge branch 'tracing-v28-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip 2008-10-20 13:35:07 -07:00
init_ohci1394_dma.h
init_task.h hrtimer: create a "timer_slack" field in the task struct 2008-09-05 21:35:30 -07:00
initrd.h
inotify.h
input-polldev.h
input.h
intel-iommu.h intel-iommu: IA64 support 2008-10-18 14:29:15 +01:00
interrupt.h Merge branch 'genirq-v28-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip 2008-10-20 13:23:01 -07:00
io.h
ioc3.h
ioc4.h
iocontext.h
ioctl.h
iommu-helper.h introduce generic iommu_num_pages function 2008-10-16 11:21:33 -07:00
ioport.h Merge branch 'core-v28-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip 2008-10-16 15:17:40 -07:00
ioprio.h
iova.h VT-d: Changes to support KVM 2008-10-15 14:24:08 +02:00
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
ipv6_route.h
ipx.h
irda.h
irq.h genirq: improve include files 2008-10-18 14:05:18 +02:00
irq_cpustat.h
irqflags.h
irqnr.h genirq: fix off by one and coding style 2008-10-21 15:54:40 +02:00
irqreturn.h
isa.h
isapnp.h
iscsi_ibft.h
isdn.h
isdn_divertif.h
isdn_ppp.h isdn: isdn_ppp: Use SKB list facilities instead of home-grown implementation. 2008-09-22 01:15:02 -07:00
isdnif.h
isicom.h
iso_fs.h
istallion.h
ivtv.h V4L/DVB (8959): include <linux/videodev2.h> into linux/ivtv.h 2008-10-12 09:37:01 -02:00
ivtvfb.h Fix header export of videodev2.h, ivtv.h, ivtvfb.h 2008-08-16 16:46:57 -07:00
ixjuser.h
jbd.h jbd: fix error handling for checkpoint io 2008-10-23 08:55:01 -07:00
jbd2.h ext4: Replace hackish ext4_mb_poll_new_transaction with commit callback 2008-10-16 20:00:24 -04:00
jffs2.h
jhash.h
jiffies.h
journal-head.h Remove Andrew Morton's old email accounts 2008-10-16 11:21:32 -07:00
joystick.h
kallsyms.h vsprintf: use new vsprintf symbolic function pointer format 2008-10-16 11:21:31 -07:00
kbd_diacr.h
kbd_kern.h
Kbuild byteorder: add new headers for make headers-install 2008-10-20 08:52:40 -07:00
kbuild.h
kd.h
kdebug.h
kdev_t.h
kernel.h kernel.h: fix might_sleep kernel-doc 2008-10-30 11:38:47 -07:00
kernel_stat.h Merge branch 'genirq-v28-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip 2008-10-20 13:23:01 -07:00
kernelcapi.h
kexec.h
key-type.h
key-ui.h
key.h add key_revoke() dummy for KEYS=n 2008-10-12 11:44:37 -07:00
keyboard.h
keyctl.h
kfifo.h
kgdb.h
klist.h klist: don't iterate over deleted entries 2008-10-09 08:56:04 +02:00
kmalloc_sizes.h
kmod.h pm: rework disabling of user mode helpers during suspend/hibernation 2008-10-16 11:21:29 -07:00
kobj_map.h
kobject.h
kprobes.h ftrace: ignore functions that cannot be kprobe-ed 2008-10-14 10:34:22 +02:00
kref.h
ks0108.h
kthread.h
ktime.h
kvm.h KVM: Future-proof device assignment ABI 2008-10-28 14:22:15 +02:00
kvm_host.h KVM: Fix guest shared interrupt with in-kernel irqchip 2008-10-28 14:21:34 +02:00
kvm_para.h
kvm_types.h
lapb.h
latencytop.h
lcd.h lcd: allow lcd device to handle mode change events 2008-09-23 22:01:33 +01:00
leds-pca9532.h
leds.h leds: Make default trigger fields const 2008-10-20 22:34:12 +01:00
lguest.h
lguest_launcher.h
libata.h libata: switch to using block layer tagging support 2008-10-23 16:05:26 -07:00
libps2.h
license.h
limits.h
linkage.h ftrace: move notrace to compiler.h 2008-10-14 10:35:08 +02:00
linux_logo.h
list.h debugobjects: fix lockdep warning 2008-09-01 09:47:16 +02:00
llc.h
lm_interface.h
lmb.h
lockdep.h
log2.h
loop.h
lp.h
lzo.h
m48t86.h
magic.h integrity: special fs magic 2008-10-13 09:47:43 +11:00
major.h block: implement extended dev numbers 2008-10-09 08:56:06 +02:00
map_to_7segment.h Input: move map_to_7segment.h to include/linux 2008-10-10 23:16:16 -04:00
maple.h
marker.h markers: fix synchronize marker unregister static inline 2008-10-14 10:39:28 +02:00
math64.h
matroxfb.h
mbcache.h
mbus.h
mc6821.h
mc146818rtc.h
mca-legacy.h
mca.h
mdio-bitbang.h
memcontrol.h memcg: allocate all page_cgroup at boot 2008-10-20 08:52:39 -07:00
memory.h
memory_hotplug.h
mempolicy.h
mempool.h
memstick.h memstick: fix MSProHG 8-bit interface mode support 2008-09-13 14:41:52 -07:00
meye.h
migrate.h vmscan: move isolate_lru_page() to vmscan.c 2008-10-20 08:50:25 -07:00
mii.h
minix_fs.h
miscdevice.h
mISDNdsp.h
mISDNhw.h
mISDNif.h
mm.h mlock: mlocked pages are unevictable 2008-10-20 08:52:30 -07:00
mm_inline.h vmscan: kill unused lru functions 2008-10-20 08:52:31 -07:00
mm_types.h memcg: allocate all page_cgroup at boot 2008-10-20 08:52:39 -07:00
mman.h
mmdebug.h
mmiotrace.h mmiotrace: remove left-over marker cruft 2008-10-14 10:37:17 +02:00
mmtimer.h
mmu_notifier.h
mmzone.h memcg: allocate all page_cgroup at boot 2008-10-20 08:52:39 -07:00
mnt_namespace.h
mod_devicetable.h HID: fix hid_device_id for cross compiling 2008-10-29 00:51:25 +01:00
module.h param: Fix duplicate module prefixes 2008-10-22 10:00:23 +11:00
moduleloader.h
moduleparam.h core_param() for genuinely core kernel parameters 2008-10-22 10:00:23 +11:00
mount.h include/linux/mount.h: remove CVS keyword 2008-10-16 11:21:30 -07:00
mpage.h
mqueue.h
mroute.h net: Unbreak userspace usage of linux/mroute.h 2008-08-29 14:37:23 -07:00
mroute6.h net: Unbreak userspace usage of linux/mroute.h 2008-08-29 14:37:23 -07:00
msdos_fs.h
msg.h
msi.h
mtio.h
mutex-debug.h
mutex.h
mv643xx.h
mv643xx_eth.h mv643xx_eth: remove force_phy_addr field 2008-09-05 06:33:59 +02:00
mv643xx_i2c.h
n_r3964.h
namei.h [PATCH vfs-2.6 6/6] vfs: add LOOKUP_RENAME_TARGET intent 2008-10-23 05:13:20 -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 Fix userspace export of <linux/net.h> 2008-08-26 10:37:20 -07:00
netdevice.h net: Fix disjunct computation of netdev features 2008-10-23 01:11:29 -07:00
netfilter.h netfilter: netns: remove nf_*_net() wrappers 2008-10-08 11:35:01 +02:00
netfilter_arp.h
netfilter_bridge.h
netfilter_decnet.h
netfilter_ipv4.h
netfilter_ipv6.h
netlink.h ipsec: Put dumpers on the dump list 2008-10-01 07:03:24 -07:00
netpoll.h
netrom.h
nfs.h
nfs2.h
nfs3.h
nfs4.h
nfs4_acl.h
nfs4_mount.h
nfs_fs.h Make nfs_file_cred more robust. 2008-10-17 13:06:45 -04:00
nfs_fs_i.h
nfs_fs_sb.h NFS: Clean up nfs_sb_active/nfs_sb_deactive 2008-10-06 20:08:26 -04:00
nfs_idmap.h
nfs_iostat.h
nfs_mount.h NFS: Add options for finer control of the lookup cache 2008-10-07 17:22:20 -04:00
nfs_page.h
nfs_xdr.h NFS: Fix the resolution problem with nfs_inode_attrs_need_update() 2008-10-14 19:23:17 -04:00
nfsacl.h
nfsd_idmap.h
nl80211.h cfg80211: Add new wireless regulatory infrastructure 2008-09-15 16:48:19 -04:00
nls.h
nmi.h
node.h
nodemask.h
notifier.h kernel/cpu.c: create a CPU_STARTING cpu_chain notifier 2008-09-08 19:25:24 +02:00
nsc_gpio.h
nsproxy.h
nubus.h
numa.h
nvram.h
of.h of: Add new helper of_parse_phandles_with_args() 2008-10-13 10:55:47 +11:00
of_device.h
of_gpio.h
of_i2c.h
of_platform.h
of_spi.h
oom.h
oprofile.h powerpc/oprofile: Fix mutex locking for cell spu-oprofile 2008-10-21 15:17:48 +11:00
page-flags.h mlock: mlocked pages are unevictable 2008-10-20 08:52:30 -07:00
page-isolation.h
page_cgroup.h memcg: fix page_cgroup allocation 2008-10-23 08:55:02 -07:00
pageblock-flags.h
pagemap.h mm: page lock use lock bitops 2008-10-20 08:52:32 -07:00
pagevec.h Unevictable LRU Infrastructure 2008-10-20 08:50:26 -07:00
param.h
parport.h parport: remove CVS keywords 2008-10-16 11:21:49 -07:00
parport_pc.h
parser.h vfs: Use const for kernel parser table 2008-10-13 10:10:37 -07:00
patchkey.h
path.h
pci-acpi.h PCI: add acpi_find_root_bridge_handle 2008-08-18 13:48:04 -07:00
pci-aspm.h
pci.h PCI: add routines for debugging and handling lost interrupts 2008-10-23 14:54:18 -07:00
pci_hotplug.h PCI: Hotplug core: remove 'name' 2008-10-22 16:42:43 -07:00
pci_ids.h Merge branch 'release' of git://git.kernel.org/pub/scm/linux/kernel/git/lenb/linux-acpi-2.6 2008-10-23 10:20:36 -07:00
pci_regs.h PCI: add support for function level reset 2008-10-22 16:42:35 -07:00
pcieport_if.h
pda_power.h
percpu.h Merge commit '63cc8c75156462d4b42cbdd76c293b7eee7ddbfe': 2008-09-05 09:24:30 +02:00
percpu_counter.h percpu counter: clean up percpu_counter_sum_and_set() 2008-10-09 12:50:59 -04:00
personality.h
pfkeyv2.h xfrm: MIGRATE enhancements (draft-ebalard-mext-pfkey-enhanced-migrate) 2008-10-05 13:33:42 -07:00
pfn.h generic: make PFN_PHYS explicitly return phys_addr_t 2008-09-14 17:24:26 +02:00
pg.h
phantom.h
phonedev.h
phonet.h Phonet: do not reply to indication reset packets 2008-10-26 23:07:25 -07:00
phy.h phylib: add mdiobus_{read,write} 2008-10-08 16:38:41 -07:00
phy_fixed.h
pid.h fix setpriority(PRIO_PGRP) thread iterator breakage 2008-08-20 15:40:32 -07:00
pid_namespace.h pid_ns: kill the now unused task_child_reaper() 2008-10-16 11:21:48 -07:00
pim.h net: Unbreak userspace usage of linux/mroute.h 2008-08-29 14:37:23 -07:00
pipe_fs_i.h
pkt_cls.h
pkt_sched.h pkt_sched: Add multiqueue scheduler support 2008-09-12 16:29:34 -07:00
pktcdvd.h
platform_device.h platform: add new device registration helper 2008-10-16 09:24:51 -07:00
plist.h
pm.h include: replace __FUNCTION__ with __func__ 2008-10-16 11:21:30 -07:00
pm_qos_params.h
pm_wakeup.h
pmu.h
pnp.h Merge branch 'linus' into test 2008-10-23 00:11:07 -04:00
poison.h
poll.h select: switch select() and poll() over to hrtimers 2008-09-05 21:35:03 -07:00
posix-timers.h posix-timers: kill ->it_sigev_signo and ->it_sigev_value 2008-09-24 15:45:48 +02:00
posix_acl.h
posix_acl_xattr.h
posix_types.h
power_supply.h power_supply: Add function to return system-wide power state 2008-09-01 02:42:54 +04:00
ppdev.h
ppp-comp.h
ppp_channel.h
ppp_defs.h
prctl.h hrtimer: create a "timer_slack" field in the task struct 2008-09-05 21:35:30 -07:00
preempt.h
prefetch.h
prio_heap.h
prio_tree.h
proc_fs.h proc: remove fs/proc/proc_misc.c 2008-10-23 18:54:05 +04:00
profile.h profiling: fix up CONFIG_PROC_FS=n build 2008-10-23 08:55:01 -07:00
proportions.h
ptrace.h make ptrace_untrace() static 2008-10-20 08:52:39 -07:00
pwm.h
pwm_backlight.h
qnx4_fs.h
qnxtypes.h
quicklist.h mm: show quicklist usage in /proc/meminfo 2008-09-02 19:21:38 -07:00
quota.h quota: remove CVS keywords 2008-10-16 11:21:46 -07:00
quotaio_v1.h
quotaio_v2.h
quotaops.h quota: remove CVS keywords 2008-10-16 11:21:46 -07:00
radeonfb.h
radix-tree.h
raid_class.h
ramfs.h mm: tiny-shmem nommu fix 2008-10-02 15:53:13 -07:00
random.h
ratelimit.h
raw.h
rbtree.h
rcuclassic.h rcu: RCU-based detection of stalled CPUs for Classic RCU 2008-10-03 10:36:08 +02:00
rculist.h
rcupdate.h rcu: add rcu_read_lock_sched() / rcu_read_unlock_sched() 2008-09-30 12:08:41 +02:00
rcupreempt.h rcu: just rename call_rcu_bh instead of making it a macro 2008-08-15 17:54:39 +02:00
rcupreempt_trace.h
reboot.h
reciprocal_div.h
regset.h
reiserfs_acl.h
reiserfs_fs.h include: replace __FUNCTION__ with __func__ 2008-10-16 11:21:30 -07:00
reiserfs_fs_i.h
reiserfs_fs_sb.h [PATCH] remember mode of reiserfs journal 2008-10-21 07:49:04 -04:00
reiserfs_xattr.h
relay.h
res_counter.h res_counter: fix off-by-one bug in setting limit 2008-09-05 14:39:37 -07:00
resource.h mm: increase the default mlock limit from 32k to 64k 2008-10-30 11:38:45 -07:00
resume-trace.h
rfkill.h rfkill: introduce RFKILL_STATE_MAX 2008-08-22 16:29:57 -04:00
ring_buffer.h ring_buffer: implement new locking 2008-10-14 10:39:05 +02:00
rio.h
rio_drv.h
rio_ids.h
rio_regs.h
rmap.h make mm/rmap.c:anon_vma_cachep static 2008-10-20 08:52:40 -07:00
romfs_fs.h
root_dev.h
rose.h
route.h
rslib.h
rtc-v3020.h
rtc.h
rtmutex.h include: replace __FUNCTION__ with __func__ 2008-10-16 11:21:30 -07:00
rtnetlink.h Phonet: global definitions 2008-09-22 19:51:15 -07:00
rwsem-spinlock.h
rwsem.h
rxrpc.h
sc26198.h
scatterlist.h
scc.h
sched.h Merge commit 'v2.6.28-rc1' into sched/urgent 2008-10-24 12:48:46 +02:00
screen_info.h
sctp.h
scx200.h
scx200_gpio.h
sdla.h
seccomp.h
securebits.h
security.h nfsd: fix vm overcommit crash 2008-10-30 11:38:47 -07:00
selection.h
selinux.h
selinux_netlink.h
sem.h
semaphore.h
seq_file.h seq_file: add seq_cpumask_list(), seq_nodemask_list() 2008-10-20 08:52:39 -07:00
seq_file_net.h
seqlock.h
serial.h tty: Cris has a nice RS485 ioctl so we should steal it 2008-10-13 09:51:40 -07:00
serial167.h
serial_8250.h
serial_core.h serial: Make uart_port's ioport "unsigned long". 2008-10-13 09:51:39 -07:00
serial_pnx8xxx.h
serial_reg.h
serial_sci.h
serialP.h
serio.h
sh_intc.h sh: Move the shared INTC code out to drivers/sh/ 2008-10-01 16:13:54 +09:00
shm.h
shmem_fs.h
signal.h
signalfd.h
skbuff.h net: packet split receive api 2008-10-07 14:22:33 -07:00
slab.h proc: move /proc/slabinfo boilerplate to mm/slub.c, mm/slab.c 2008-10-23 15:20:06 +04:00
slab_def.h
slob_def.h
slub_def.h
sm501-regs.h
sm501.h
smb.h smb.h: do not include linux/time.h in userspace 2008-09-23 08:09:13 -07:00
smb_fs.h
smb_fs_i.h
smb_fs_sb.h
smb_mount.h
smbno.h
smc91x.h Export smc91x led definitions 2008-09-09 17:41:42 +02:00
smc911x.h smc911x: Add IRQ polarity configuration 2008-10-22 07:00:38 -04:00
smp.h softirq: Add support for triggering softirq work on softirqs. 2008-10-17 08:46:56 +02:00
smp_lock.h
snmp.h
socket.h Phonet: implement GPRS virtual interface over PEP socket 2008-10-05 11:16:16 -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
stacktrace.h include/linux/stacktrace.h: declare struct task_struct 2008-10-03 18:22:18 -07:00
stallion.h
start_kernel.h
stat.h
statfs.h
stddef.h
stop_machine.h stop_machine: Remove deprecated stop_machine_run 2008-08-26 00:19:27 +10:00
string.h
string_helpers.h [SCSI] lib: add generic helper to print sizes rounded to the correct SI range 2008-10-03 11:46:14 -05:00
stringify.h
superhyway.h
suspend.h
suspend_ioctls.h
svga.h
swab.h byteorder: use generic C version for value byteswapping 2008-10-20 08:52:40 -07:00
swap.h vmscan: unevictable LRU scan sysctl 2008-10-20 08:52:31 -07:00
swapops.h
swiotlb.h introduce generic header file for the software IO/TLB 2008-10-16 11:21:28 -07:00
synclink.h
sys.h
syscalls.h
sysctl.h sysctl: simplify ->strategy 2008-10-16 11:21:47 -07:00
sysdev.h
sysfs.h x86: sysfs: kill owner field from attribute 2008-10-20 08:52:42 -07:00
sysrq.h
sysv_fs.h
task_io_accounting.h Remove Andrew Morton's old email accounts 2008-10-16 11:21:32 -07:00
task_io_accounting_ops.h
taskstats.h
taskstats_kern.h
tc.h
tcp.h tcp: kill pointless urg_mode 2008-10-07 14:43:06 -07:00
telephony.h telephony: remove CVS keywords 2008-10-16 11:21:45 -07:00
termios.h tty: Add termiox 2008-10-13 09:51:40 -07:00
textsearch.h
textsearch_fsm.h
tfrc.h
thermal.h
thread_info.h select: add a poll specific struct to the restart_block union 2008-09-05 21:35:01 -07:00
threads.h
tick.h NOHZ: unify the nohz function calls in irq_enter() 2008-10-17 18:13:38 +02:00
tifm.h
time.h Merge branch 'timers/range-hrtimers' into v28-range-hrtimers-for-linus-v2 2008-10-22 09:48:06 +02:00
timer.h
timerfd.h
times.h
timex.h ntp: improve adjtimex frequency rounding 2008-09-24 17:33:13 +02:00
tiocl.h
tipc.h
tipc_config.h
topology.h
toshiba.h
tracehook.h tracehook: comment pasto fixes 2008-09-05 14:39:38 -07:00
tracepoint.h tracepoints: synchronize unregister static inline 2008-10-14 10:39:31 +02:00
transport_class.h
trdevice.h
tsacct_kern.h
tty.h tty: some ICANON magic is in the wrong places 2008-10-13 09:51:44 -07:00
tty_driver.h Add an instance parameter devpts interfaces 2008-10-13 09:51:43 -07:00
tty_flip.h
tty_ldisc.h
typecheck.h
types.h [PATCH] introduce fmode_t, do annotations 2008-10-21 07:47:06 -04:00
uaccess.h
ucb1400.h [ARM] 5184/1: Split ucb1400_ts into core and touchscreen 2008-08-20 23:22:22 +01:00
udf_fs_i.h
udp.h
uinput.h
uio.h
uio_driver.h
ultrasound.h
un.h
unistd.h
unwind.h
usb.h USB: anchor API changes needed for btusb 2008-10-17 14:41:02 -07:00
usb_usual.h
usbdevice_fs.h
user.h
user_namespace.h
utime.h
uts.h
utsname.h
uwb.h uwb: add symlinks in sysfs between radio controllers and PALs 2008-09-17 16:54:35 +01:00
vermagic.h
veth.h
vfs.h
via.h
video_decoder.h
video_encoder.h
video_output.h
videodev.h
videodev2.h V4L/DVB (9320): v4l2: Add 10-bit RAW Bayer formats 2008-10-21 14:31:15 -02:00
videotext.h
virtio.h
virtio_9p.h
virtio_balloon.h
virtio_blk.h
virtio_config.h
virtio_console.h
virtio_net.h
virtio_pci.h
virtio_ring.h
virtio_rng.h
vmalloc.h proc: move /proc/vmallocinfo to mm/vmalloc.c 2008-10-23 15:48:28 +04:00
vmstat.h proc: move /proc/zoneinfo boilerplate to mm/vmstat.c 2008-10-23 17:35:04 +04:00
vt.h
vt_buffer.h
vt_kern.h tty: Remove more special casing and out of place code 2008-10-13 09:51:42 -07:00
w1-gpio.h
wait.h wait: kill is_sync_wait() 2008-10-16 11:21:31 -07:00
wanrouter.h
watchdog.h
wireless.h
wlp.h uwb: add the uwb include files 2008-09-17 16:54:23 +01:00
wm97xx.h
wm97xx_batt.h [ARM] 5248/1: wm97xx generic battery driver 2008-10-02 22:48:34 +01:00
workqueue.h workqueue: introduce create_rt_workqueue 2008-10-22 10:00:25 +11:00
writeback.h vfs: Add no_nrwrite_index_update writeback control flag 2008-10-16 10:09:17 -04:00
x25.h
xattr.h
xfrm.h xfrm: MIGRATE enhancements (draft-ebalard-mext-pfkey-enhanced-migrate) 2008-10-05 13:33:42 -07:00
xilinxfb.h
yam.h
zconf.h
zlib.h
zorro.h
zorro_ids.h
zutil.h