Hugh Dickins
9ba6929480
ksm: fix oom deadlock
...
There's a now-obvious deadlock in KSM's out-of-memory handling:
imagine ksmd or KSM_RUN_UNMERGE handling, holding ksm_thread_mutex,
trying to allocate a page to break KSM in an mm which becomes the
OOM victim (quite likely in the unmerge case): it's killed and goes
to exit, and hangs there waiting to acquire ksm_thread_mutex.
Clearly we must not require ksm_thread_mutex in __ksm_exit, simple
though that made everything else: perhaps use mmap_sem somehow?
And part of the answer lies in the comments on unmerge_ksm_pages:
__ksm_exit should also leave all the rmap_item removal to ksmd.
But there's a fundamental problem, that KSM relies upon mmap_sem to
guarantee the consistency of the mm it's dealing with, yet exit_mmap
tears down an mm without taking mmap_sem. And bumping mm_users won't
help at all, that just ensures that the pages the OOM killer assumes
are on their way to being freed will not be freed.
The best answer seems to be, to move the ksm_exit callout from just
before exit_mmap, to the middle of exit_mmap: after the mm's pages
have been freed (if the mmu_gather is flushed), but before its page
tables and vma structures have been freed; and down_write,up_write
mmap_sem there to serialize with KSM's own reliance on mmap_sem.
But KSM then needs to be careful, whenever it downs mmap_sem, to
check that the mm is not already exiting: there's a danger of using
find_vma on a layout that's being torn apart, or writing into page
tables which have been freed for reuse; and even do_anonymous_page
and __do_fault need to check they're not being called by break_ksm
to reinstate a pte after zap_pte_range has zapped that page table.
Though it might be clearer to add an exiting flag, set while holding
mmap_sem in __ksm_exit, that wouldn't cover the issue of reinstating
a zapped pte. All we need is to check whether mm_users is 0 - but
must remember that ksmd may detect that before __ksm_exit is reached.
So, ksm_test_exit(mm) added to comment such checks on mm->mm_users.
__ksm_exit now has to leave clearing up the rmap_items to ksmd,
that needs ksm_thread_mutex; but shift the exiting mm just after the
ksm_scan cursor so that it will soon be dealt with. __ksm_enter raise
mm_count to hold the mm_struct, ksmd's exit processing (exactly like
its processing when it finds all VM_MERGEABLEs unmapped) mmdrop it,
similar procedure for KSM_RUN_UNMERGE (which has stopped ksmd).
But also give __ksm_exit a fast path: when there's no complication
(no rmap_items attached to mm and it's not at the ksm_scan cursor),
it can safely do all the exiting work itself. This is not just an
optimization: when ksmd is not running, the raised mm_count would
otherwise leak mm_structs.
Signed-off-by: Hugh Dickins <hugh.dickins@tiscali.co.uk>
Acked-by: Izik Eidus <ieidus@redhat.com>
Cc: Andrea Arcangeli <aarcange@redhat.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2009-09-22 07:17:32 -07:00
..
amba
ARM: 5636/1: Move vendor enum to AMBA include
2009-09-12 11:51:14 +01:00
byteorder
can
can: add can_free_echo_skb() for upcoming drivers
2009-09-04 02:16:14 -07:00
decompress
bzip2/lzma/gzip: fix comments describing decompressor API
2009-08-07 10:39:56 -07:00
dvb
V4L/DVB (12997): Add the DTV_ISDB_TS_ID property for ISDB_S
2009-09-19 00:51:34 -03:00
hdlc
i2c
mfd: Add support for TWL4030/5030 dynamic power switching
2009-09-17 09:47:22 +02:00
input
Input: matrix-keypad - add function to build device keymap
2009-08-27 22:05:39 -07:00
isdn
ISDN: Add support for none reverse bitstreams to isdnhdc
2009-07-25 20:16:01 +02:00
lockd
const: make lock_manager_operations const
2009-09-22 07:17:25 -07:00
mfd
Merge git://git.kernel.org/pub/scm/linux/kernel/git/wim/linux-2.6-watchdog
2009-09-18 09:47:25 -07:00
mlx4
mmc
imwc3200: move iwmc3200 SDIO ids to sdio_ids.h
2009-07-26 19:25:47 -07:00
mtd
Nicolas Pitre has a new email address
2009-09-15 09:37:12 -07:00
netfilter
netfilter: nfnetlink: constify message attributes and headers
2009-08-25 16:07:58 +02:00
netfilter_arp
netfilter: xtables: mark initial tables constant
2009-08-24 14:56:30 +02:00
netfilter_bridge
netfilter: xtables: mark initial tables constant
2009-08-24 14:56:30 +02:00
netfilter_ipv4
netfilter: xtables: mark initial tables constant
2009-08-24 14:56:30 +02:00
netfilter_ipv6
netfilter: xtables: mark initial tables constant
2009-08-24 14:56:30 +02:00
nfsd
raid
regulator
regulator: Provide mode to status conversion function
2009-09-17 09:47:05 +02:00
rtc
spi
ssb
ssb: Implement SDIO host bus support
2009-09-09 11:19:00 -04:00
sunrpc
nfs: fix compile error in rpc_pipefs.h
2009-08-20 18:20:25 -04:00
tc_act
tc_ematch
unaligned
usb
tty: USB serial termios bits
2009-09-19 13:13:33 -07:00
uwb
wimax
8250_pci.h
a.out.h
ac97_codec.h
acct.h
acpi.h
acpi_pmtmr.h
adb.h
adfs_fs.h
aer.h
affs_hardblocks.h
agp_backend.h
intel-agp: fix sglist allocation to avoid vmalloc()
2009-08-03 09:04:57 +01:00
agpgart.h
aio.h
includecheck fix: include/linux, aio.h
2009-09-20 16:09:20 +05:30
aio_abi.h
amifd.h
amifdreg.h
amigaffs.h
anon_inodes.h
apm-emulation.h
apm_bios.h
arcdevice.h
netdev: convert bulk of drivers to netdev_tx_t
2009-09-01 01:14:07 -07:00
arcfb.h
async.h
async_tx.h
ata.h
libata: add command name parsing for error output
2009-09-01 19:47:20 -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
driver model: constify attribute groups
2009-09-15 09:50:47 -07:00
audit.h
auto_dev-ioctl.h
auto_fs.h
auto_fs4.h
auxvec.h
ax25.h
b1lli.h
b1pcmcia.h
backing-dev.h
writeback: separate starting of sync vs opportunistic writeback
2009-09-16 15:18:52 +02:00
backlight.h
baycom.h
bcd.h
bfs_fs.h
binfmts.h
exec: do not sleep in TASK_TRACED under ->cred_guard_mutex
2009-09-05 11:30:42 -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
Make bitmask 'and' operators return a result code
2009-08-21 09:26:15 -07:00
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
bottom_half.h
bpqether.h
brcmphy.h
bsg.h
buffer_head.h
bug.h
c2port.h
cache.h
can.h
capability.h
capi.h
cb710.h
cb710: use SG_MITER_TO_SG/SG_MITER_FROM_SG
2009-07-31 12:28:46 +02:00
cciss_ioctl.h
cd1400.h
cdev.h
cdk.h
cdrom.h
cfag12864b.h
cgroup.h
cgroup avoid permanent sleep at rmdir
2009-07-29 19:10:35 -07:00
cgroup_subsys.h
cgroupstats.h
chio.h
circ_buf.h
clk.h
clockchips.h
clocksource.h
clocksource: Resolve cpu hotplug dead lock with TSC unstable
2009-08-28 20:25:24 +02: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
compiler-gcc.h
compiler-gcc3.h
compiler-gcc4.h
compiler-intel.h
compiler.h
completion.h
comstats.h
concap.h
configfs.h
connector.h
console.h
console_struct.h
consolemap.h
const.h
cpu.h
cpu hotplug: Introduce cpu_notifier() to handle !HOTPLUG_CPU case
2009-08-15 19:02:07 +02:00
cpufreq.h
[CPUFREQ] Introduce global, not per core: /sys/devices/system/cpu/cpufreq
2009-09-01 12:45:14 -04:00
cpuidle.h
cpumask.h
Make bitmask 'and' operators return a result code
2009-08-21 09:26:15 -07:00
cpuset.h
cramfs_fs.h
cramfs_fs_sb.h
crash_dump.h
crc-ccitt.h
crc-itu-t.h
crc-t10dif.h
crc7.h
crc16.h
crc32.h
crc32c.h
cred.h
Creds: creds->security can be NULL is selinux is disabled
2009-09-14 12:34:07 +10: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
dcache.h
dcbnl.h
dcbnl: Add support for setapp/getapp commands to dcbnl
2009-09-01 01:24:30 -07:00
dccp.h
dcookies.h
debug_locks.h
debugfs.h
debugobjects.h
delay.h
delayacct.h
headers: taskstats_kern.h trim
2009-09-18 09:48:52 -07:00
device-mapper.h
dm stripe: expose correct io hints
2009-09-04 20:40:25 +01:00
device.h
Driver-Core: extend devnode callbacks to provide permissions
2009-09-19 12:50:38 -07:00
device_cgroup.h
devpts_fs.h
dio.h
dirent.h
display.h
dlm.h
dlm_device.h
dlm_netlink.h
dlm_plock.h
dlmconstants.h
dm-dirty-log.h
dm-io.h
dm-ioctl.h
dm-kcopyd.h
dm-log-userspace.h
dm log: userspace add luid to distinguish between concurrent log instances
2009-09-04 20:40:34 +01:00
dm-region-hash.h
dm9000.h
dma-attrs.h
dma-debug.h
dma-mapping.h
dma: Add set_dma_mask hook to struct dma_map_ops
2009-08-28 14:24:10 +10:00
dma_remapping.h
dmaengine.h
dmapool.h
dmar.h
dmi.h
dmi: extend dmi_get_year() to dmi_get_date()
2009-09-08 21:17:48 -04:00
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
[SCSI] ses: add support for enclosure component hot removal
2009-08-22 17:52:13 -05:00
err.h
errno.h
errqueue.h
etherdevice.h
ethtool.h
net/ethtool: Add support for the ethtool feature to flash firmware image from a specified file.
2009-09-02 23:07:39 -07:00
eventfd.h
eventpoll.h
exportfs.h
ext2_fs.h
ext2_fs_sb.h
ext3_fs.h
ext3_fs_i.h
ext3_fs_sb.h
ext3_jbd.h
f75375s.h
fadvise.h
falloc.h
fault-inject.h
fb.h
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
firmware-map.h
firmware.h
flat.h
flex_array.h
flex_array: convert element_nr formals to unsigned
2009-08-26 20:06:52 -07:00
font.h
freezer.h
fs.h
const: make lock_manager_operations const
2009-09-22 07:17:25 -07:00
fs_enet_pd.h
fs_stack.h
fs_struct.h
fs_uart_pd.h
fscache-cache.h
fscache.h
fsl_devices.h
fsnotify.h
fsnotify_backend.h
ftrace.h
includecheck fix: include/linux, ftrace.h
2009-09-20 16:58:35 +05:30
ftrace_event.h
tracing: Allocate the ftrace event profile buffer dynamically
2009-09-18 07:25:44 +02:00
ftrace_irq.h
fuse.h
futex.h
gameport.h
gcd.h
gen_stats.h
net: restore gnet_stats_basic to previous definition
2009-08-17 21:33:49 -07:00
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
gfs2_ondisk.h
GFS2: Add explanation of extended attr on-disk format
2009-08-25 13:44:04 +01:00
gigaset_dev.h
gpio.h
gpio_keys.h
gpio_mouse.h
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
hdlc: convert to netdev_tx_t
2009-09-01 01:13:31 -07:00
hdlcdrv.h
hdpu_features.h
hdreg.h
hid-debug.h
hid.h
Merge branches 'upstream', 'upstream-fixes' and 'debugfs' into for-linus
2009-09-13 20:09:41 +02:00
hiddev.h
hidraw.h
highmem.h
highuid.h
hil.h
hil_mlc.h
hippidevice.h
hp_sdc.h
hpet.h
hrtimer.h
Merge branch 'linus' into timers/core
2009-08-14 15:59:30 +02:00
htirq.h
hugetlb.h
hugetlb: balance freeing of huge pages across nodes
2009-09-22 07:17:26 -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
i2o-dev.h
i2o.h
i8k.h
i7300_idle.h
i8042.h
ibmtr.h
icmp.h
icmpv6.h
net: include/linux/icmpv6: includecheck fix for icmpv6.h
2009-08-12 22:13:15 -07:00
ide.h
ide: convert to ->proc_fops
2009-09-01 17:52:57 -07:00
idr.h
ieee80211.h
mac80211: Update mesh config IE to 11s draft 3.02
2009-08-28 14:40:24 -04:00
if.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
Drop ARPHRD_IEEE802154_PHY
2009-08-19 23:08:24 +04:00
if_bonding.h
if_bridge.h
if_cablemodem.h
if_ec.h
if_eql.h
if_ether.h
net: deprecate print_mac
2009-07-26 19:25:44 -07:00
if_fc.h
if_fddi.h
if_frad.h
wan: dlci/sdla transmit return dehacking
2009-09-07 01:56:33 -07:00
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
bonding: remap muticast addresses without using dev_close() and dev_open()
2009-09-15 02:37:40 -07:00
ihex.h
ima.h
in.h
in6.h
in_route.h
inet.h
inet_diag.h
inet_lro.h
inetdevice.h
ip: fix logic of reverse path filter sysctl
2009-07-27 18:39:45 -07:00
init.h
x86: properly annotate alternatives.c
2009-08-21 15:30:12 -07:00
init_ohci1394_dma.h
init_task.h
perf: Do the big rename: Performance Counters -> Performance Events
2009-09-21 14:28:04 +02:00
initrd.h
inotify.h
input-polldev.h
input.h
intel-iommu.h
interrupt.h
Merge branch 'for-2.6.32' of git://git.kernel.dk/linux-2.6-block
2009-09-14 17:55:15 -07:00
io-mapping.h
x86, pat: Add PAT reserve free to io_mapping* APIs
2009-08-26 15:41:16 -07:00
io.h
ioc3.h
ioc4.h
iocontext.h
io context: fix ref counting
2009-07-31 08:55:48 +02:00
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
ipmi.h
ipmi_msgdefs.h
ipmi_smi.h
ipsec.h
ipv6.h
ipv6_route.h
ipx.h
irda.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
irq_cpustat.h
irqflags.h
irqnr.h
irq: Add irq_node() primitive
2009-08-29 15:53:00 +02:00
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: Journal block numbers can ever be only 32-bit use unsigned int for them
2009-09-16 17:44:10 +02:00
jbd2.h
jbd2: bitfields should be unsigned
2009-08-17 22:38:04 -04: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.h
kernel_stat.h
kernelcapi.h
kexec.h
key-type.h
key.h
KEYS: Add a keyctl to install a process's session keyring on its parent [try #6 ]
2009-09-02 21:29:22 +10:00
keyboard.h
keyctl.h
KEYS: Add a keyctl to install a process's session keyring on its parent [try #6 ]
2009-09-02 21:29:22 +10:00
kfifo.h
kfifo: Use "const" definitions
2009-09-19 13:13:17 -07:00
kgdb.h
klist.h
kmalloc_sizes.h
kmemcheck.h
kmemleak: Don't scan uninitialized memory when kmemcheck is enabled
2009-09-04 16:05:55 +01:00
kmemleak.h
kmemleak: Mark the early log buffer as __initdata
2009-08-27 14:29:16 +01:00
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
ks0108.h
ksm.h
ksm: fix oom deadlock
2009-09-22 07:17:32 -07:00
kthread.h
ktime.h
kvm.h
KVM: VMX: Introduce KVM_SET_IDENTITY_MAP_ADDR ioctl
2009-09-10 08:33:16 +03:00
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
lapb.h
latencytop.h
lcd.h
leds-bd2802.h
leds-lp3944.h
leds-pca9532.h
leds.h
leds_pwm.h
lguest.h
lguest and virtio: cleanup struct definitions to Linux style.
2009-07-30 16:03:46 +09:30
lguest_launcher.h
lguest: fix comment style
2009-07-30 16:03:45 +09:30
libata.h
libata: remove spindown skipping and warning
2009-09-01 19:47:20 -04:00
libps2.h
Input: add new driver for Sentelic Finger Sensing Pad
2009-08-19 21:46:09 -07:00
license.h
limits.h
linkage.h
linux_logo.h
lis3lv02d.h
list.h
list_nulls.h
llc.h
lmb.h
lmb: Also remove __init from lmb_end_of_RAM() declaration in lmb.h
2009-08-31 17:30:14 -10:00
lockdep.h
lockdep: Reintroduce generation count to make BFS faster
2009-08-02 15:41:37 +02:00
log2.h
loop.h
lp.h
lsm_audit.h
SELinux: Convert avc_audit to use lsm_audit.h
2009-08-17 08:37:18 +10:00
lzo.h
m48t86.h
magic.h
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
mdio: mdio_if_info::mmds should not be __bitwise
2009-08-18 20:13:03 -07:00
memcontrol.h
memory.h
memory_hotplug.h
mempolicy.h
mempool.h
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
mISDN: Make clearing B-channel a common function
2009-07-25 20:18:16 +02:00
mISDNif.h
mISDN: Add support for Speedfax+ cards
2009-07-25 20:19:25 +02:00
mm.h
ksm: the mm interface to ksm
2009-09-22 07:17:31 -07:00
mm_inline.h
mm_types.h
mm: revert "oom: move oom_adj value"
2009-08-18 16:31:13 -07:00
mman.h
mmdebug.h
mmiotrace.h
mmtimer.h
mmu_notifier.h
ksm: add mmu_notifier set_pte_at_notify()
2009-09-22 07:17:31 -07:00
mmzone.h
mm: vmstat: add isolate pages
2009-09-22 07:17:29 -07:00
mnt_namespace.h
mod_devicetable.h
module.h
tracing: Remove markers
2009-09-18 21:22:08 +02: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
mv643xx.h
mv643xx_eth.h
mv643xx_i2c.h
n_r3964.h
namei.h
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
[PATCH] net: kmemcheck annotation in struct socket
2009-09-15 02:39:20 -07:00
net_dropmon.h
net_tstamp.h
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.h
netfilter_arp.h
netfilter_bridge.h
netfilter_decnet.h
netfilter_ipv4.h
netfilter_ipv6.h
netlink.h
genetlink: fix netns vs. netlink table locking
2009-09-14 17:02:50 -07:00
netpoll.h
netrom.h
nfs.h
nfs2.h
nfs3.h
nfs4.h
NFS: Allow the "nfs" file system type to support NFSv4
2009-09-08 19:50:03 -04:00
nfs4_acl.h
nfs4_mount.h
nfs_fs.h
NFS: Fix an O_DIRECT Oops...
2009-08-12 08:21:39 -07:00
nfs_fs_i.h
nfs_fs_sb.h
NFSv4: Add 'server capability' flags for NFSv4 recommended attributes
2009-08-09 15:06:19 -04:00
nfs_idmap.h
nfs_iostat.h
nfs_mount.h
nfs_page.h
nfs_xdr.h
nfsacl.h
nfsd_idmap.h
nilfs2_fs.h
nl80211.h
nl80211: add generation number to all dumps
2009-08-14 09:13:43 -04:00
nl802154.h
ieee802154: add support for channel pages from IEEE 802.15.4-2006
2009-08-19 23:08:22 +04:00
nls.h
nmi.h
debug lockups: Improve lockup detection, fix generic arch fallback
2009-08-03 09:56:52 +02:00
node.h
nodemask.h
mm: make set_mempolicy(MPOL_INTERLEAV) N_HIGH_MEMORY aware
2009-08-07 10:39:55 -07:00
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.h
of_device.h
of_gpio.h
of_i2c.h
of_mdio.h
of_platform.h
of_spi.h
oom.h
oprofile.h
oxu210hp.h
page-debug-flags.h
page-flags.h
mm: perform non-atomic test-clear of PG_mlocked on free
2009-09-22 07:17:30 -07:00
page-isolation.h
page_cgroup.h
includecheck fix: include/linux, page_cgroup.h
2009-09-20 16:57:50 +05:30
pageblock-flags.h
pagemap.h
rcu: Expunge lingering references to CONFIG_CLASSIC_RCU, optimize on !SMP
2009-08-22 13:07:09 +02:00
pagevec.h
param.h
parport.h
parport_pc.h
parser.h
patchkey.h
path.h
pci-acpi.h
pci-aspm.h
pci.h
PCI PM: Introduce device flag wakeup_prepared
2009-09-09 14:19:11 -07:00
pci_hotplug.h
PCI hotplug: acpiphp: use generic pci_configure_slot()
2009-09-14 17:39:12 -07:00
pci_ids.h
libata: Add pata_atp867x driver for Artop/Acard ATP867X controllers
2009-09-17 16:47:06 -04:00
pci_regs.h
uio: add generic driver for PCI 2.3 devices
2009-09-15 09:50:48 -07:00
pcieport_if.h
pda_power.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
percpu: kill lpage first chunk allocator
2009-08-14 15:00:53 +09:00
percpu_counter.h
perf_counter.h
perf: Tidy up after the big rename
2009-09-21 14:34:11 +02:00
perf_event.h
perf: Tidy up after the big rename
2009-09-21 14:34:11 +02:00
personality.h
pfkeyv2.h
pfn.h
pg.h
phantom.h
phonedev.h
phonet.h
cdc-phonet: autoconfigure Phonet address
2009-09-11 12:55:10 -07:00
phy.h
phy_fixed.h
pid.h
pid_namespace.h
pim.h
pipe_fs_i.h
pkt_cls.h
pkt_sched.h
pktcdvd.h
platform_device.h
plist.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
pm_qos_params.h
pm_runtime.h
PM: Introduce core framework for run-time PM of I/O devices (rev. 17)
2009-08-23 00:04:44 +02:00
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
pps.h
pps.h needs <linux/types.h>
2009-07-29 19:10:36 -07:00
pps_kernel.h
prctl.h
perf: Do the big rename: Performance Counters -> Performance Events
2009-09-21 14:28:04 +02:00
preempt.h
prefetch.h
prio_heap.h
prio_tree.h
proc_fs.h
profile.h
proportions.h
ptrace.h
pwm.h
pwm_backlight.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
random.h
ratelimit.h
rational.h
raw.h
rbtree.h
rculist.h
rculist_nulls.h
rcu: Fix whitespace inconsistencies
2009-09-19 08:53:22 +02:00
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
RDS: Add TCP transport to RDS
2009-08-23 19:13:02 -07:00
reboot.h
reciprocal_div.h
regset.h
reiserfs_acl.h
reiserfs_fs.h
reiserfs_fs_i.h
reiserfs_fs_sb.h
reiserfs_xattr.h
relay.h
res_counter.h
resource.h
resume-trace.h
rfkill.h
rfkill: relicense header file
2009-09-01 12:48:21 -04:00
ring_buffer.h
ring-buffer: only enable ring_buffer_swap_cpu when needed
2009-09-04 19:42:22 -04:00
rio.h
rio_drv.h
rio_ids.h
rio_regs.h
rmap.h
ksm: no debug in page_dup_rmap()
2009-09-22 07:17:31 -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
IPv6/addrconf: Fix minor addrlabel thinko
2009-09-09 03:42:23 -07:00
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
lib/scatterlist: add a flags to signalize mapping direction
2009-07-31 12:28:45 +02:00
scc.h
sched.h
ksm: the mm interface to ksm
2009-09-22 07:17:31 -07:00
screen_info.h
sctp.h
scx200.h
scx200_gpio.h
sdla.h
seccomp.h
securebits.h
security.h
LSM/SELinux: inode_{get,set,notify}secctx hooks to access LSM security context information.
2009-09-10 10:11:24 +10:00
selection.h
selinux.h
SELinux: inline selinux_is_enabled in !CONFIG_SECURITY_SELINUX
2009-09-15 11:37:33 +10:00
selinux_netlink.h
sem.h
semaphore.h
seq_file.h
seq_file_net.h
seqlock.h
serial.h
serial: move the flags into the tty_port field
2009-09-19 13:13:30 -07:00
serial167.h
serial_8250.h
serial: 8250: add IRQ trigger support
2009-09-19 13:13:19 -07:00
serial_core.h
serial: kill USF_CLOSING_* definitions
2009-09-19 13:13:32 -07:00
serial_max3100.h
serial_pnx8xxx.h
serial_reg.h
serial_sci.h
serialP.h
serio.h
Input: serio - switch to using dev_pm_ops
2009-07-26 11:17:01 -07:00
sh_intc.h
sh: Simplify "multi-evt" interrupt handling.
2009-08-24 19:52:38 +09:00
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
signalfd.h
skbuff.h
net: remove unused skb->do_not_encrypt
2009-07-24 15:05:31 -04:00
slab.h
slab_def.h
slob_def.h
slab: remove duplicate kmem_cache_init_late() declarations
2009-08-06 11:36:25 +03:00
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.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
locking: Simplify spinlock inlining
2009-08-31 18:08:51 +02:00
spinlock_api_smp.h
locking: Simplify spinlock inlining
2009-08-31 18:08:51 +02:00
spinlock_api_up.h
spinlock_types.h
spinlock_types_up.h
spinlock_up.h
splice.h
srcu.h
stackprotector.h
stacktrace.h
stallion.h
start_kernel.h
stat.h
statfs.h
stddef.h
stop_machine.h
string.h
string_helpers.h
stringify.h
superhyway.h
suspend.h
suspend_ioctls.h
svga.h
swab.h
swap.h
mm: make swap token dummies static inlines
2009-09-22 07:17:25 -07:00
swapops.h
swiotlb.h
swiotlb: use phys_to_dma and dma_to_phys
2009-07-28 14:19:20 +09:00
synclink.h
sys.h
syscalls.h
Merge branch 'perfcounters-rename-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip
2009-09-21 09:15:07 -07: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
headers: taskstats_kern.h trim
2009-09-18 09:48:52 -07:00
tboot.h
x86, intel_txt: clean up the impact on generic code, unbreak non-x86
2009-09-01 18:25:07 -07:00
tc.h
tcp.h
tcp: MD5 operations should be const
2009-09-02 01:03:43 -07:00
telephony.h
termios.h
textsearch.h
textsearch_fsm.h
tfrc.h
thermal.h
thread_info.h
threads.h
tick.h
tifm.h
time.h
time: Prevent 32 bit overflow with set_normalized_timespec()
2009-09-15 10:17:30 +02:00
timecompare.h
timer.h
timers: Drop a function prototype
2009-08-30 22:26:34 +02:00
timerfd.h
timeriomem-rng.h
times.h
timex.h
tiocl.h
tipc.h
tipc_config.h
topology.h
sched: Disable wakeup balancing
2009-09-16 16:44:33 +02:00
toshiba.h
tpm.h
trace_clock.h
trace_seq.h
tracehook.h
tracepoint.h
Merge branch 'tracing/core' of git://git.kernel.org/pub/scm/linux/kernel/git/frederic/random-tracing into tracing/core
2009-08-26 08:29:02 +02:00
transport_class.h
driver model: constify attribute groups
2009-09-15 09:50:47 -07:00
trdevice.h
tsacct_kern.h
tty.h
tty: handle VT specific compat ioctls in vt driver
2009-09-19 13:13:35 -07:00
tty_driver.h
tty_flip.h
tty_ldisc.h
tty-ldisc: make refcount be atomic_t 'users' count
2009-08-04 13:46:30 -07:00
typecheck.h
types.h
uaccess.h
ucb1400.h
Input: ucb1400_ts - enable ADC Filter
2009-08-21 00:53:12 -07:00
udf_fs_i.h
udp.h
uinput.h
uio.h
uio: mark uio.h functions __KERNEL__ only
2009-07-29 19:10:39 -07:00
uio_driver.h
ultrasound.h
un.h
unistd.h
usb.h
Driver-Core: extend devnode callbacks to provide permissions
2009-09-19 12:50:38 -07:00
usb_usual.h
usbdevice_fs.h
user.h
user_namespace.h
utime.h
uts.h
utsname.h
uwb.h
uwb: avoid radio controller reset loops
2009-08-26 12:39:29 +01:00
vermagic.h
veth.h
vfs.h
vgaarb.h
PCI/vgaarb: cleanup some warnings + cleanup some comments.
2009-09-09 13:29:41 -07:00
via.h
video_output.h
videodev.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
videotext.h
virtio.h
virtio_9p.h
virtio_balloon.h
virtio_blk.h
lguest and virtio: cleanup struct definitions to Linux style.
2009-07-30 16:03:46 +09:30
virtio_config.h
lguest and virtio: cleanup struct definitions to Linux style.
2009-07-30 16:03:46 +09:30
virtio_console.h
virtio_net.h
lguest and virtio: cleanup struct definitions to Linux style.
2009-07-30 16:03:46 +09:30
virtio_pci.h
virtio_ring.h
lguest and virtio: cleanup struct definitions to Linux style.
2009-07-30 16:03:46 +09:30
virtio_rng.h
vlynq.h
vmalloc.h
vmalloc: implement pcpu_get_vm_areas()
2009-08-14 15:00:52 +09:00
vmstat.h
mm: count only reclaimable lru pages
2009-09-22 07:17:30 -07:00
vt.h
vt: add an activate and lock
2009-09-19 13:13:26 -07:00
vt_buffer.h
vt_kern.h
vt: move kernel stuff out of vt.h
2009-09-19 13:13:25 -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.h
wm97xx_batt.h
workqueue.h
workqueues: introduce __cancel_delayed_work()
2009-09-05 11:30:42 -07:00
writeback.h
writeback: separate starting of sync vs opportunistic writeback
2009-09-16 15:18:52 +02:00
x25.h
xattr.h
VFS: Factor out part of vfs_setxattr so it can be called from the SELinux hook for inode_setsecctx.
2009-09-10 10:11:22 +10:00
xfrm.h
xilinxfb.h
yam.h
zconf.h
zlib.h
zorro.h
zorro_ids.h
zutil.h