twx-linux/include/linux
Hugh Dickins cbf86cfe04 ksm: remove old stable nodes more thoroughly
Switching merge_across_nodes after running KSM is liable to oops on stale
nodes still left over from the previous stable tree.  It's not something
that people will often want to do, but it would be lame to demand a reboot
when they're trying to determine which merge_across_nodes setting is best.

How can this happen?  We only permit switching merge_across_nodes when
pages_shared is 0, and usually set run 2 to force that beforehand, which
ought to unmerge everything: yet oopses still occur when you then run 1.

Three causes:

1. The old stable tree (built according to the inverse
   merge_across_nodes) has not been fully torn down.  A stable node
   lingers until get_ksm_page() notices that the page it references no
   longer references it: but the page is not necessarily freed as soon as
   expected, particularly when swapcache.

   Fix this with a pass through the old stable tree, applying
   get_ksm_page() to each of the remaining nodes (most found stale and
   removed immediately), with forced removal of any left over.  Unless the
   page is still mapped: I've not seen that case, it shouldn't occur, but
   better to WARN_ON_ONCE and EBUSY than BUG.

2. __ksm_enter() has a nice little optimization, to insert the new mm
   just behind ksmd's cursor, so there's a full pass for it to stabilize
   (or be removed) before ksmd addresses it.  Nice when ksmd is running,
   but not so nice when we're trying to unmerge all mms: we were missing
   those mms forked and inserted behind the unmerge cursor.  Easily fixed
   by inserting at the end when KSM_RUN_UNMERGE.

3.  It is possible for a KSM page to be faulted back from swapcache
   into an mm, just after unmerge_and_remove_all_rmap_items() scanned past
   it.  Fix this by copying on fault when KSM_RUN_UNMERGE: but that is
   private to ksm.c, so dissolve the distinction between
   ksm_might_need_to_copy() and ksm_does_need_to_copy(), doing it all in
   the one call into ksm.c.

A long outstanding, unrelated bugfix sneaks in with that third fix:
ksm_does_need_to_copy() would copy from a !PageUptodate page (implying I/O
error when read in from swap) to a page which it then marks Uptodate.  Fix
this case by not copying, letting do_swap_page() discover the error.

Signed-off-by: Hugh Dickins <hughd@google.com>
Cc: Rik van Riel <riel@redhat.com>
Cc: Petr Holasek <pholasek@redhat.com>
Cc: Andrea Arcangeli <aarcange@redhat.com>
Cc: Izik Eidus <izik.eidus@ravellosystems.com>
Cc: Gerald Schaefer <gerald.schaefer@de.ibm.com>
Cc: KOSAKI Motohiro <kosaki.motohiro@gmail.com>
Acked-by: Mel Gorman <mgorman@suse.de>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2013-02-23 17:50:19 -08:00
..
amba arm: Move sp810.h to include/linux/amba/ 2013-01-30 15:55:45 +00:00
bcma Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-next into for-davem 2013-02-08 13:16:17 -05:00
byteorder
can can: rework skb reserved data handling 2013-01-28 18:17:25 -05:00
ceph Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/sage/ceph-client 2012-12-20 14:00:13 -08:00
clk arm-soc: soc-specific updates 2013-02-21 15:27:22 -08:00
crush
decompress
dma
extcon extcon: gpio: Rename filename of extcon-gpio.c according to kernel naming style 2013-02-13 08:35:43 -08:00
fsl
hsi UAPI: Remove empty Kbuild files 2013-01-02 17:36:10 -08:00
i2c Merge branch 'i2c-embedded/for-next' of git://git.pengutronix.de/git/wsa/linux 2012-12-18 16:51:10 -08:00
iio iio:triggers Protect functions in triggers.h from use when not compiled 2013-02-09 15:22:14 +00:00
input Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input 2013-02-20 11:00:43 -08:00
irqchip ARM: gic: add __ASSEMBLY__ guard to C definitions 2013-02-11 18:58:34 +00:00
isdn
lockd
mfd arm-soc: cleanups 2013-02-21 14:58:40 -08:00
mlx4 net/mlx4: Move Ethernet related functionality from mlx4_core to mlx4_en 2013-02-07 23:26:12 -05:00
mmc MMC highlights for 3.8: 2012-12-11 11:19:09 -08:00
mtd
netfilter netfilter: nfnetlink: add mutex per subsystem 2013-02-05 04:07:35 +01:00
netfilter_arp
netfilter_bridge
netfilter_ipv4
netfilter_ipv6
nfsd
pinctrl pinctrl: generic: rename input schmitt disable 2013-02-15 09:52:29 +01:00
platform_data Merge branch 'akpm' (incoming from Andrew) 2013-02-21 17:38:49 -08:00
power bq2415x_charger: Add support for offline and 100mA mode 2013-02-16 13:34:10 -08:00
raid UAPI: Remove empty Kbuild files 2013-01-02 17:36:10 -08:00
regulator regulator: core: Allow specify apply_[reg|bit] for regmap based voltage_sel operations 2012-12-24 16:34:11 +00:00
rtc
sched sched/rt: Move rt specific bits into new header file 2013-02-07 20:51:08 +01:00
spi Staging tree update for 3.9-rc1 2013-02-21 12:11:44 -08:00
ssb Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-next into for-davem 2013-02-08 13:16:17 -05:00
sunrpc SUNRPC: Nuke the tk_xprt macro 2013-02-01 10:13:48 -05:00
tc_act
unaligned
usb arm-soc: soc-specific updates 2013-02-21 15:27:22 -08:00
uwb
wimax
8250_pci.h
a.out.h
acct.h
acpi_gpio.h
acpi_io.h
acpi_pmtmr.h
acpi.h acpi, memory-hotplug: parse SRAT before memblock is ready 2013-02-23 17:50:14 -08:00
adb.h
adfs_fs.h
aer.h aerdrv: Enhanced AER logging 2013-01-03 14:34:06 -08:00
agp_backend.h
agpgart.h
ahci_platform.h
aio.h
alarmtimer.h
altera_jtaguart.h
altera_uart.h
amd-iommu.h
amifd.h
amifdreg.h
amigaffs.h
anon_inodes.h
apm_bios.h
apm-emulation.h
apple_bl.h
arcdevice.h
asn1_ber_bytecode.h
asn1_decoder.h
asn1.h ASN.1: Define indefinite length marker constant 2012-12-14 13:06:41 +10:30
async_tx.h
async.h async: keep pending tasks on async_domain and remove async_pending 2013-01-23 09:32:30 -08:00
ata_platform.h include: remove __dev* attributes. 2013-01-03 15:57:16 -08:00
ata.h [libata] replace sata_settings with devslp_timing 2013-01-14 13:29:15 -05:00
atalk.h
ath9k_platform.h
atm_suni.h
atm_tcp.h
atm.h
atmdev.h
atmel_pdc.h
atmel_pwm.h
atmel_serial.h
atmel_tc.h
atmel-mci.h
atmel-pwm-bl.h
atmel-ssc.h
atomic.h
attribute_container.h
audit.h linux/audit.h: move ptrace.h include to kernel header 2013-01-11 14:54:56 -08:00
auto_dev-ioctl.h
auto_fs.h
auxvec.h
average.h
b1pcmcia.h
backing-dev.h bdi: allow block devices to say that they require stable page writes 2013-02-21 17:22:19 -08:00
backlight.h backlight: add of_find_backlight_by_node() 2012-12-17 17:15:16 -08:00
balloon_compaction.h mm: introduce a common interface for balloon pages mobility 2012-12-11 17:22:26 -08:00
basic_mmio_gpio.h
bcd.h
bch.h
bcm47xx_wdt.h
bfin_mac.h
binfmts.h Merge branch 'akpm' (Andrew's patch-bomb) 2012-12-20 20:00:43 -08:00
bio.h
bit_spinlock.h
bitmap.h
bitops.h
bitrev.h
blk_types.h
blk-iopoll.h
blkdev.h blk: avoid divide-by-zero with zero discard granularity 2012-12-19 07:18:35 -08:00
blktrace_api.h
blockgroup_lock.h
bma150.h Input: bma150 - make some defines public and fix some comments 2013-02-15 18:52:45 -08:00
bootmem.h memory-hotplug: common APIs to support page tables hot-remove 2013-02-23 17:50:12 -08:00
bottom_half.h
brcmphy.h
bsearch.h
bsg-lib.h
bsg.h
btree-128.h
btree-type.h
btree.h
buffer_head.h
bug.h bug.h, compiler.h: introduce compiletime_assert & BUILD_BUG_ON_MSG 2013-02-21 17:22:16 -08:00
c2port.h
cache.h
capability.h
cb710.h
cciss_ioctl.h
cdev.h
cdrom.h
cfag12864b.h
cgroup_subsys.h
cgroup.h cgroup: remove synchronize_rcu() from cgroup_diput() 2013-01-24 12:05:18 -08:00
circ_buf.h
cleancache.h
clk-private.h
clk-provider.h clk: add common of_clk_init() function 2013-01-24 11:09:28 -08:00
clk.h
clkdev.h
clksrc-dbx500-prcmu.h
clockchips.h clockevents: Add generic timer broadcast function 2013-01-31 22:15:36 +01:00
clocksource.h clocksource: always define CLOCKSOURCE_OF_DECLARE 2013-01-31 19:57:30 -08:00
cm4000_cs.h
cn_proc.h
cnt32_to_63.h
coda_psdev.h
coda.h
com20020.h
compaction.h mm: compaction: make __compact_pgdat() and compact_pgdat() return void 2013-02-23 17:50:10 -08:00
compat.h Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/signal 2012-12-20 18:05:28 -08:00
compiler-gcc3.h compiler-gcc{3,4}.h: Use GCC_VERSION macro 2013-02-21 17:22:15 -08:00
compiler-gcc4.h compiler{,-gcc4}.h, bug.h: Remove duplicate macros 2013-02-21 17:22:15 -08:00
compiler-gcc.h compiler-gcc.h: Add gcc-recommended GCC_VERSION macro 2013-02-21 17:22:15 -08:00
compiler-intel.h
compiler.h bug.h, compiler.h: introduce compiletime_assert & BUILD_BUG_ON_MSG 2013-02-21 17:22:16 -08:00
completion.h
concap.h
configfs.h
connector.h
console_struct.h
console.h tty: Added a CONFIG_TTY option to allow removal of TTY 2013-01-18 16:15:27 -08:00
consolemap.h
context_tracking.h context_tracking: Export context state for generic vtime 2013-01-26 17:37:17 +01:00
cordic.h
coredump.h
cper.h
cpu_cooling.h
cpu_pm.h
cpu_rmap.h lib: cpu_rmap: avoid flushing all workqueues 2013-01-11 14:54:54 -08:00
cpu.h
cpufreq.h cpufreq: Remove unnecessary use of policy->shared_type 2013-02-02 01:29:32 +01:00
cpuidle.h cpuidle: remove vestage definition of cpuidle_state_usage.driver_data 2013-02-11 18:49:51 -05:00
cpumask.h
cpuset.h cpuset: use N_MEMORY instead N_HIGH_MEMORY 2012-12-12 17:38:32 -08:00
cramfs_fs_sb.h
cramfs_fs.h
crash_dump.h
crc7.h
crc8.h
crc16.h
crc32.h
crc32c.h
crc-ccitt.h
crc-itu-t.h
crc-t10dif.h
cred.h cred: Remove tgcred pointer from struct cred 2013-01-09 08:26:53 -08:00
crypto.h
cryptohash.h
cryptouser.h
cs5535.h
ctype.h
cuda.h
cyclades.h
cycx_x25.h
davinci_emac.h
dca.h
dcache.h vfs: remove DCACHE_NEED_LOOKUP 2012-12-20 13:57:36 -05:00
dccp.h
dcookies.h
debug_locks.h
debugfs.h debugfs: regset32: make struct debugfs_reg32 pointer const 2013-01-18 15:25:53 -08:00
debugobjects.h
delay.h
delayacct.h
devfreq.h
device_cgroup.h
device-mapper.h dm: remove map_info 2012-12-21 20:23:41 +00:00
device.h Driver core patches for 3.9-rc1 2013-02-21 12:05:51 -08:00
devpts_fs.h
digsig.h
dio.h
dirent.h
dlm_plock.h
dlm.h
dm9000.h
dm-dirty-log.h
dm-io.h
dm-kcopyd.h
dm-region-hash.h
dma_remapping.h
dma-attrs.h
dma-buf.h Merge branch 'master' into for-next 2013-01-29 10:48:30 +01:00
dma-contiguous.h
dma-debug.h
dma-direction.h
dma-mapping.h
dmaengine.h
dmapool.h
dmar.h
dmi.h
dnotify.h
dns_resolver.h
dqblk_qtree.h
dqblk_v1.h
dqblk_v2.h
drbd_genl_api.h
drbd_genl.h
drbd_limits.h
drbd.h
ds1286.h
ds2782_battery.h
ds17287rtc.h
dtlk.h
dw_apb_timer.h ARM: delete struct sys_timer 2012-12-24 09:36:38 -07:00
dw_dmac.h
dynamic_debug.h dynamic_debug: dynamic hex dump 2013-01-17 12:19:09 -08:00
dynamic_queue_limits.h
earlycpio.h
ecryptfs.h
edac.h
edd.h
edma.h
eeprom_93cx6.h
eeprom_93xx46.h
efi-bgrt.h
efi.h A few fixes to reduce places where pstore might hang 2013-02-21 09:38:18 -08:00
efs_vh.h
eisa.h
elevator.h init, block: try to load default elevator module early during boot 2013-01-18 14:05:56 -08:00
elf-fdpic.h
elf.h
elfcore-compat.h
elfcore.h
elfnote.h
enclosure.h
err.h
errno.h
errqueue.h
etherdevice.h net: split eth_mac_addr for better error handling 2013-01-21 14:07:44 -05:00
ethtool.h
eventfd.h
eventpoll.h
evm.h
export.h
exportfs.h Merge branch 'for-3.8' of git://linux-nfs.org/~bfields/linux 2012-12-20 14:04:11 -08:00
ext2_fs.h
extcon.h
f2fs_fs.h
f75375s.h
falloc.h
fanotify.h
fault-inject.h
fb.h
fcdevice.h
fcntl.h
fd.h
fddidevice.h
fdtable.h
fec.h
file.h
filter.h
fips.h
firewire.h
firmware-map.h memory-hotplug: remove /sys/firmware/memmap/X sysfs 2013-02-23 17:50:12 -08:00
firmware.h
fixp-arith.h
flat.h
flex_array.h
flex_proportions.h
font.h
freezer.h suspend: enable freeze timeout configuration through sys 2013-02-09 22:32:48 +01:00
frontswap.h
fs_enet_pd.h
fs_stack.h
fs_struct.h
fs_uart_pd.h
fs.h mm: minor cleanup of iov_iter_single_seg_count() 2013-01-24 16:21:27 +01:00
fscache-cache.h FS-Cache: Mark cancellation of in-progress operation 2012-12-20 22:34:00 +00:00
fscache.h FS-Cache: Provide proper invalidation 2012-12-20 22:04:07 +00:00
fsl_devices.h
fsl_hypervisor.h
fsl-diu-fb.h
fsnotify_backend.h fsnotify: make fasync generic for both inotify and fanotify 2012-12-11 13:44:36 -05:00
fsnotify.h
ftrace_event.h tracing: Make a snapshot feature available from userspace 2013-01-30 11:02:06 -05:00
ftrace_irq.h
ftrace.h ftrace: Move ARCH_SUPPORTS_FTRACE_SAVE_REGS in Kconfig 2013-01-21 13:22:35 -05:00
futex.h
gameport.h
gcd.h
genalloc.h
generic_acl.h
genetlink.h
genhd.h
genl_magic_func.h
genl_magic_struct.h
getcpu.h
gfp.h mm: allocate kernel pages to the right memcg 2012-12-18 15:02:12 -08:00
gpio_keys.h
gpio_mouse.h
gpio-fan.h
gpio-pxa.h
gpio.h
gsmmux.h
hardirq.h Merge branch 'sched-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip 2013-02-19 18:19:48 -08:00
hash.h
hashtable.h
hdlc.h
hdlcdrv.h
hid-debug.h
hid-roccat.h
hid-sensor-hub.h hid: iio: rename struct hid_sensor_iio_common to hid_sensor_common 2013-01-06 11:48:11 +00:00
hid-sensor-ids.h iio: Add Usage IDs for HID time sensors. 2013-01-06 11:41:12 +00:00
hid.h Merge branches 'for-3.9/logitech', 'for-3.9/multitouch', 'for-3.9/ntrig', 'for-3.9/thingm' and 'for-3.9/upstream' into for-linus 2013-02-21 10:45:01 +01:00
hiddev.h
hidraw.h
highmem.h mm: remove unused memclear_highpage_flush() 2013-02-23 17:50:16 -08:00
highuid.h
hil_mlc.h
hil.h
hippidevice.h
hp_sdc.h
hpet.h
hrtimer.h
htcpld.h
htirq.h
huge_mm.h mm/rmap: rename anon_vma_unlock() => anon_vma_unlock_write() 2013-02-23 17:50:17 -08:00
hugetlb_cgroup.h mm/hugetlb: create hugetlb cgroup file in hugetlb_init 2012-12-18 15:02:15 -08:00
hugetlb_inline.h
hugetlb.h Automatic NUMA Balancing V11 2012-12-16 15:18:08 -08:00
hw_breakpoint.h
hw_random.h
hwmon-sysfs.h
hwmon-vid.h
hwmon.h hwmon: Retire SENSORS_LIMIT 2013-01-25 21:03:54 -08:00
hwspinlock.h
hyperv.h Drivers: hv: vmbus: Consolidate all offer GUID definitions in hyperv.h 2013-01-25 11:17:31 -08:00
i2c-algo-bit.h
i2c-algo-pca.h
i2c-algo-pcf.h
i2c-dev.h
i2c-gpio.h
i2c-mux-gpio.h
i2c-mux-pinctrl.h
i2c-mux.h
i2c-ocores.h
i2c-omap.h
i2c-pca-platform.h
i2c-pnx.h
i2c-pxa.h
i2c-smbus.h
i2c-tegra.h
i2c-xiic.h
i2c.h
i2o.h
i7300_idle.h
i8042.h
i8253.h
i82593.h
icmp.h
icmpv6.h
ide.h
idr.h
ieee80211.h mac80211: advertise operating mode notification capability 2013-02-15 09:41:42 +01:00
if_arp.h
if_bridge.h
if_eql.h
if_ether.h
if_fddi.h
if_frad.h
if_link.h
if_ltalk.h
if_macvlan.h macvlan: add multicast filter 2013-02-06 15:59:47 -05:00
if_phonet.h
if_pppol2tp.h
if_pppox.h
if_team.h team: allow userspace to take control over carrier 2013-02-06 15:48:09 -05:00
if_tun.h
if_tunnel.h
if_vlan.h
igmp.h
ihex.h
ima.h ima: support new kernel module syscall 2012-12-14 13:05:26 +10:30
in6.h ipv6: by default join ff01::1 and in case of forwarding ff01::2 and ff05:2 2013-02-11 14:16:26 -05:00
in.h
inet_diag.h
inet_lro.h
inet.h
inetdevice.h ipv4: introduce address lifetime 2013-01-29 13:59:57 -05:00
init_ohci1394_dma.h
init_task.h sched/rt: Add <linux/sched/rt.h> header to <linux/init_task.h> 2013-02-19 08:06:01 +01:00
init.h Merge branch 'master' into for-3.9-async 2013-01-23 09:31:01 -08:00
initrd.h
inotify.h
input-polldev.h
input.h
integrity.h
intel_mid_dma.h
intel_pmic_gpio.h
intel-iommu.h
interrupt.h lib: cpu_rmap: avoid flushing all workqueues 2013-01-11 14:54:54 -08:00
interval_tree_generic.h
interval_tree.h
io-mapping.h
io.h
ioc3.h
ioc4.h
iocontext.h
iommu-helper.h
iommu.h
ioport.h
ioprio.h
iova.h
ip.h
ipack.h
ipc_namespace.h ipc: add sysctl to specify desired next object id 2013-01-04 16:11:45 -08:00
ipc.h
ipmi_smi.h
ipmi.h
ipv6_route.h
ipv6.h ipv6 flowlabel: Convert np->ipv6_fl_list to RCU. 2013-01-30 22:41:13 -05:00
irq_cpustat.h
irq_work.h Merge branch 'nohz/printk-v8' into irq/core 2013-02-05 00:48:46 +01:00
irq.h x86, msi: Use IRQ remapping specific setup_msi_irqs routine 2013-01-28 12:17:25 +01:00
irqchip.h irqchip: add basic infrastructure 2013-01-10 11:44:38 -06:00
irqdesc.h
irqdomain.h
irqflags.h
irqnr.h
irqreturn.h
isa.h
isapnp.h
iscsi_boot_sysfs.h
iscsi_ibft.h
isdn_divertif.h
isdn_ppp.h
isdn.h
isdnif.h
isicom.h
jbd2.h ext4: fix deadlock in journal_unmap_buffer() 2012-12-25 13:29:52 -05:00
jbd_common.h
jbd.h
jhash.h
jiffies.h
journal-head.h
joystick.h
jump_label.h
jz4740-adc.h
kallsyms.h
kbd_diacr.h
kbd_kern.h
kbuild.h
kcmp.h
kconfig.h
kd.h
kdb.h
kdebug.h
kdev_t.h
kern_levels.h
kernel_stat.h cputime: Generic on-demand virtual cputime accounting 2013-01-27 19:23:27 +01:00
kernel-page-flags.h
kernel.h linux/kernel.h: fix DIV_ROUND_CLOSEST with unsigned divisors 2012-12-20 17:40:20 -08:00
kernelcapi.h
kexec.h x86: Add Crash kernel low reservation 2013-01-29 19:32:58 -08:00
key-type.h
key.h Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jmorris/linux-security 2012-12-16 15:40:50 -08:00
keyboard.h
kfifo.h
kgdb.h kgdb: remove #include <linux/serial_8250.h> from kgdb.h 2013-02-04 15:35:26 -08:00
khugepaged.h
klist.h
kmalloc_sizes.h
kmemcheck.h
kmemleak.h
kmod.h
kmsg_dump.h
kobj_map.h
kobject_ns.h
kobject.h
kprobes.h kprobes/x86: Move ftrace-based kprobe code into kprobes-ftrace.c 2013-01-21 13:22:36 -05:00
kref.h
ks0108.h
ks8842.h
ks8851_mll.h
ksm.h ksm: remove old stable nodes more thoroughly 2013-02-23 17:50:19 -08:00
kthread.h
ktime.h
kvm_host.h cputime: Safely read cputime of full dynticks CPUs 2013-01-27 20:35:47 +01:00
kvm_para.h
kvm_types.h
l2tp.h
lapb.h
latencytop.h
lcd.h
lcm.h
led-lm3530.h
leds_pwm.h
leds-bd2802.h
leds-lp3944.h
leds-lp5521.h
leds-lp5523.h
leds-pca9532.h
leds-regulator.h
leds-tca6507.h
leds.h
lglock.h
lguest_launcher.h
lguest.h
libata.h [libata] replace sata_settings with devslp_timing 2013-01-14 13:29:15 -05:00
libfdt_env.h
libfdt.h
libps2.h Input: increase struct ps2dev cmdbuf[] to 8 bytes 2013-01-06 01:11:25 -08:00
license.h
linkage.h
linux_logo.h
lis3lv02d.h
list_bl.h
list_nulls.h
list_sort.h
list.h
llc.h
llist.h llist/xen-blkfront: implement safe version of llist_for_each_entry 2012-12-17 21:55:56 -05:00
lockdep.h lockdep: make lockdep_assert_held() not have a return value 2013-02-21 17:22:19 -08:00
log2.h
loop.h
lp.h
lru_cache.h Merge branch 'for-3.8/drivers' of git://git.kernel.dk/linux-block 2012-12-17 13:39:11 -08:00
lsm_audit.h
lzo.h
m48t86.h
mailbox.h ARM / highbank: add support for pl320 IPC 2013-02-02 00:01:15 +01:00
maple.h
marvell_phy.h
math64.h
max17040_battery.h
mbcache.h
mbus.h
mc6821.h
mc146818rtc.h
mdio-bitbang.h
mdio-gpio.h
mdio-mux.h
mdio.h
memblock.h mm/memblock.c: use CONFIG_HAVE_MEMBLOCK_NODE_MAP to protect movablecore_map in memblock_overlaps_region(). 2013-02-23 17:50:14 -08:00
memcontrol.h memcg: fix typo in kmemcg cache walk macro 2013-02-05 20:38:48 +11:00
memory_hotplug.h memory-hotplug: export the function try_offline_node() 2013-02-23 17:50:13 -08:00
memory.h hotplug: update nodemasks management 2012-12-12 17:38:33 -08:00
mempolicy.h mm: mempolicy: Convert shared_policy mutex to spinlock 2013-01-02 17:32:13 -08:00
mempool.h
memstick.h
mg_disk.h
micrel_phy.h drivers/net/phy/micrel_phy: Add support for new PHYs 2013-01-28 18:42:10 -05:00
migrate_mode.h
migrate.h Automatic NUMA Balancing V11 2012-12-16 15:18:08 -08:00
mii.h
miscdevice.h
mISDNdsp.h
mISDNhw.h
mISDNif.h
mm_inline.h
mm_types.h mm: fold page->_last_nid into page->flags where possible 2013-02-23 17:50:17 -08:00
mm.h mm: rename page struct field helpers 2013-02-23 17:50:18 -08:00
mman.h mm: introduce VM_POPULATE flag to better deal with racy userspace programs 2013-02-23 17:50:11 -08:00
mmdebug.h
mmiotrace.h
mmu_context.h
mmu_notifier.h mm: fix wrong comments about anon_vma lock 2013-02-05 20:38:48 +11:00
mmzone.h mm: move page flags layout to separate header 2013-02-23 17:50:17 -08:00
mnt_namespace.h
mod_devicetable.h
module.h module: add new state MODULE_STATE_UNFORMED. 2013-01-12 13:27:05 +10:30
moduleloader.h
moduleparam.h moduleparam: use __UNIQUE_ID() 2012-12-14 13:06:40 +10:30
mount.h
mpage.h
mpi.h
mroute6.h mcast: define and use MRT[6]_MAX in ip[6]_mroute_opt() 2013-01-21 13:55:14 -05:00
mroute.h mcast: define and use MRT[6]_MAX in ip[6]_mroute_opt() 2013-01-21 13:55:14 -05:00
msdos_fs.h
msg.h selftests: IPC message queue copy feature test 2013-01-04 16:11:45 -08:00
msi.h
msm_mdp.h
mutex-debug.h
mutex.h
mv643xx_eth.h
mv643xx_i2c.h
mv643xx.h
mxm-wmi.h
mxsfb.h
n_r3964.h
namei.h namei.h: include errno.h 2012-12-25 18:45:06 -05:00
nbd.h
net.h
netdev_features.h v4 GRE: Add TCP segmentation offload for GRE 2013-02-15 15:17:11 -05:00
netdevice.h net: fix a build failure when !CONFIG_PROC_FS 2013-02-19 13:18:13 -05:00
netfilter_bridge.h
netfilter_ipv4.h
netfilter_ipv6.h
netfilter.h
netlink.h
netpoll.h netpoll: Fix __netpoll_rcu_free so that it can hold the rtnl lock 2013-02-11 19:19:33 -05:00
nfs3.h
nfs4.h
nfs_fs_i.h
nfs_fs_sb.h
nfs_fs.h
nfs_idmap.h
nfs_iostat.h
nfs_page.h
nfs_xdr.h NFSv4.1: Move the RPC timestamp out of the slot. 2012-12-15 15:21:52 -05:00
nfs.h
nfsacl.h
nilfs2_fs.h
nl802154.h
nls.h
nmi.h
node.h mm: cleanup register_node() 2012-12-11 17:22:27 -08:00
nodemask.h numa: add CONFIG_MOVABLE_NODE for movable-dedicated node 2012-12-12 17:38:34 -08:00
notifier.h
nsc_gpio.h
nsproxy.h
ntb.h PCI-Express Non-Transparent Bridge Support 2013-01-17 19:11:14 -08:00
nubus.h
numa.h
nvme.h
nvram.h
nwpserial.h
nx842.h
of_address.h
of_device.h
of_fdt.h
of_gpio.h gpio: Make of_count_named_gpios() use new of_count_phandle_with_args() 2013-02-13 10:11:53 +00:00
of_i2c.h of/i2c: add dummy inline functions for when CONFIG_OF_I2C(_MODULE) isn't defined 2012-12-11 17:30:16 +00:00
of_iommu.h
of_irq.h
of_mdio.h
of_mtd.h
of_net.h
of_pci.h
of_pdt.h
of_platform.h of: define struct device in of_platform.h if !OF_DEVICE and !OF_ADDRESS 2012-12-19 16:15:17 +00:00
of.h of: Create function for counting number of phandles in a property 2013-02-13 10:09:31 +00:00
oid_registry.h
olpc-ec.h
omap-dma.h
omap-iommu.h
omapfb.h
oom.h mm, oom: fix race when specifying a thread as the oom origin 2012-12-11 17:22:27 -08:00
openvswitch.h
opp.h
oprofile.h
oxu210hp.h
padata.h
page_cgroup.h
page-debug-flags.h
page-flags-layout.h mm: fold page->_last_nid into page->flags where possible 2013-02-23 17:50:17 -08:00
page-flags.h s390/mm: implement software dirty bits 2013-02-14 15:55:23 +01:00
page-isolation.h mm: remove MIGRATE_ISOLATE check in hotpath 2013-02-23 17:50:15 -08:00
pageblock-flags.h
pagemap.h mm: only enforce stable page writes if the backing device requires it 2013-02-21 17:22:19 -08:00
pagevec.h
parport_pc.h
parport.h
parser.h
pata_arasan_cf_data.h
patchkey.h
path.h
pch_dma.h
pci_hotplug.h
pci_ids.h tty/serial patches for 3.9-rc1 2013-02-21 13:41:04 -08:00
pci-acpi.h
pci-aspm.h
pci-ats.h
pci-dma.h
pci.h PCI/MSI: Enable multiple MSIs with pci_enable_msi_block_auto() 2013-01-24 17:25:13 +01:00
pcieport_if.h
pda_power.h
percpu_counter.h percpu_counter.h: comment code for better readability 2013-02-05 11:54:06 +01:00
percpu-defs.h
percpu-rwsem.h percpu_rw_semaphore: add lockdep annotations 2012-12-17 17:15:18 -08:00
percpu.h
perf_event.h perf: Introduce hw_perf_event->tp_target and ->tp_list 2013-02-08 18:28:02 +01:00
perf_regs.h
personality.h
pfn.h
phonedev.h
phonet.h
phy_fixed.h
phy.h net: phy: remove flags argument from phy_{attach, connect, connect_direct} 2013-01-14 15:11:50 -05:00
pid_namespace.h pidns: Stop pid allocation when init dies 2012-12-25 16:10:05 -08:00
pid.h pidns: Stop pid allocation when init dies 2012-12-25 16:10:05 -08:00
pim.h
pipe_fs_i.h
pktcdvd.h
platform_device.h driver core: add helper macro for platform_driver_probe() boilerplate 2013-01-17 17:39:33 -08:00
plist.h
pm2301_charger.h pm2301: LPN mode control support 2013-01-23 14:39:19 +00:00
pm_clock.h
pm_domain.h
pm_qos.h
pm_runtime.h pm / runtime: introduce pm_runtime_set_memalloc_noio() 2013-02-23 17:50:16 -08:00
pm_wakeup.h
pm.h pm / runtime: introduce pm_runtime_set_memalloc_noio() 2013-02-23 17:50:16 -08:00
pmu.h
pnfs_osd_xdr.h
pnp.h
poison.h
poll.h
posix_acl_xattr.h
posix_acl.h
posix-clock.h
posix-timers.h
power_supply.h Driver core patches for 3.9-rc1 2013-02-21 12:05:51 -08:00
ppp_channel.h
ppp_defs.h
ppp-comp.h
pps_kernel.h pps: Add pps_lookup_dev() function 2013-02-13 09:40:35 -08:00
pps-gpio.h
preempt.h
prefetch.h
printk.h Merge branch 'akpm' (incoming from Andrew) 2013-02-21 17:38:49 -08:00
prio_heap.h
proc_fs.h tty/serial patches for 3.9-rc1 2013-02-21 13:41:04 -08:00
profile.h profiling: Remove unused timer hook 2013-01-24 15:37:26 +01:00
projid.h
proportions.h
pstore_ram.h pstore: remove __dev* attributes. 2013-01-03 15:57:14 -08:00
pstore.h pstore: Avoid deadlock in panic and emergency-restart path 2013-01-11 10:20:50 -08:00
pti.h
ptp_classify.h
ptp_clock_kernel.h
ptrace.h ia64: kill thread_matches(), unexport ptrace_check_attach() 2013-01-20 12:26:05 -08:00
pvclock_gtod.h
pwm_backlight.h
pwm.h
pxa2xx_ssp.h spi/pxa2xx: add support for Intel Low Power Subsystem SPI 2013-02-08 13:14:40 +00:00
pxa168_eth.h
qnx6_fs.h
quicklist.h
quota.h
quotaops.h
radix-tree.h
raid_class.h
ramfs.h
random.h soreuseport: infrastructure 2013-01-23 13:44:00 -05:00
range.h
ratelimit.h
rational.h
rbtree_augmented.h lib/rbtree.c: avoid the use of non-static __always_inline 2013-01-11 14:54:56 -08:00
rbtree.h
rculist_bl.h
rculist_nulls.h
rculist.h
rcupdate.h Merge branches 'doctorture.2013.01.29a', 'fixes.2013.01.26a', 'tagcb.2013.01.24a' and 'tiny.2013.01.29b' into HEAD 2013-01-28 22:25:21 -08:00
rcutiny.h
rcutree.h
reboot.h
reciprocal_div.h
regmap.h Merge remote-tracking branch 'regmap/topic/no-bus' into regmap-next 2013-02-14 17:11:09 +00:00
regset.h
relay.h
remoteproc.h
res_counter.h res_counter: return amount of charges after res_counter_uncharge() 2012-12-18 15:02:12 -08:00
resource.h
resume-trace.h
rfkill-gpio.h
rfkill-regulator.h
rfkill.h
ring_buffer.h ring-buffer: Add stats field for amount read from trace ring buffer 2013-01-30 11:01:53 -05:00
rio_drv.h
rio_ids.h
rio_regs.h
rio.h
rmap.h mm/rmap: rename anon_vma_unlock() => anon_vma_unlock_write() 2013-02-23 17:50:17 -08:00
rndis.h
root_dev.h
rotary_encoder.h
rpmsg.h
rslib.h
rtc-ds2404.h
rtc-v3020.h
rtc.h Driver core patches for 3.9-rc1 2013-02-21 12:05:51 -08:00
rtmutex.h
rtnetlink.h
rwlock_api_smp.h
rwlock_types.h
rwlock.h
rwsem-spinlock.h
rwsem.h lockdep, rwsem: fix down_write_nest_lock() if !CONFIG_DEBUG_LOCK_ALLOC 2013-01-16 12:13:20 -08:00
rxrpc.h
s3c_adc_battery.h
sa11x0-dma.h
scatterlist.h
scc.h
sched.h mm: teach mm by current context info to not do I/O during memory allocation 2013-02-23 17:50:16 -08:00
screen_info.h
sctp.h
scx200_gpio.h
scx200.h
sdla.h
seccomp.h
securebits.h
security.h tun: fix LSM/SELinux labeling of tun/tap devices 2013-01-14 18:16:59 -05:00
selection.h
selinux.h
sem.h
semaphore.h
seq_file_net.h
seq_file.h
seqlock.h
serial_8250.h serial: 8250: Add support for dmaengine 2013-01-15 23:03:00 -08:00
serial_core.h pps: Move timestamp read into PPS code proper 2013-02-13 10:13:58 -08:00
serial_max3100.h
serial_mfd.h
serial_pnx8xxx.h
serial_sci.h
serial.h
serio.h
sfi_acpi.h
sfi.h
sh_clk.h
sh_dma.h
sh_eth.h
sh_intc.h
sh_timer.h
shdma-base.h
shm.h mm: support more pagesizes for MAP_HUGETLB/SHM_HUGETLB 2012-12-11 17:22:25 -08:00
shmem_fs.h
shrinker.h
signal.h new helpers: __save_altstack/__compat_save_altstack, switch x86 and um to those 2012-12-19 18:07:41 -05:00
signalfd.h
sirfsoc_dma.h
sizes.h
skbuff.h v4 GRE: Add TCP segmentation offload for GRE 2013-02-15 15:17:11 -05:00
slab_def.h slab/slub: struct memcg_params 2012-12-18 15:02:13 -08:00
slab.h slab: propagate tunable values 2012-12-18 15:02:14 -08:00
slob_def.h
slub_def.h slub: slub-specific propagation changes 2012-12-18 15:02:14 -08:00
sm501-regs.h
sm501.h
smc91x.h
smc911x.h
smp.h smp: make smp_call_function_many() use logic similar to smp_call_function_single() 2013-02-21 17:22:20 -08:00
smpboot.h smpboot: Allow selfparking per cpu threads 2013-02-14 15:29:37 +01:00
smsc911x.h
smscphy.h
sock_diag.h
socket.h VSOCK: Introduce VM Sockets 2013-02-10 19:41:08 -05:00
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 srcu: Remove checks preventing idle CPUs from calling srcu_read_lock() 2013-02-07 15:15:00 -08:00
stackprotector.h
stacktrace.h
start_kernel.h
stat.h
statfs.h
static_key.h
stddef.h
ste_modem_shm.h
stmmac.h Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial 2012-12-13 12:00:02 -08:00
stmp_device.h
stop_machine.h
string_helpers.h
string.h string: introduce helper to get base file name from given path 2012-12-17 17:15:17 -08:00
stringify.h
sungem_phy.h
sunserialcore.h pps: Fix build breakage from decoupling pps from tty 2013-02-13 12:15:50 -08:00
sunxi_timer.h ARM: delete struct sys_timer 2012-12-24 09:36:38 -07:00
superhyway.h
suspend.h PM: Introduce suspend state PM_SUSPEND_FREEZE 2013-02-09 22:30:44 +01:00
svga.h
swab.h
swap.h swap: add per-partition lock for swapfile 2013-02-23 17:50:17 -08:00
swapfile.h
swapops.h
swiotlb.h x86: Don't panic if can not alloc buffer for swiotlb 2013-01-29 19:36:53 -08:00
synclink.h
sys_soc.h
sys.h
syscalls.h Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/signal 2012-12-20 18:05:28 -08:00
syscore_ops.h
sysctl.h
sysfs.h sysfs: Functions for adding/removing symlinks to/from attribute groups 2013-01-25 21:51:13 +01:00
syslog.h
sysrq.h
sysv_fs.h
task_io_accounting_ops.h
task_io_accounting.h
task_work.h
taskstats_kern.h
tboot.h
tc.h
tca6416_keypad.h
tcp.h tcp: adding a per-socket timestamp offset 2013-02-13 13:22:15 -05:00
tegra-ahb.h
tegra-soc.h ARM: tegra: add function to read chipid 2013-01-28 11:19:06 -07:00
textsearch_fsm.h
textsearch.h
tfrc.h
thermal.h Thermal: Fix DEFAULT_THERMAL_GOVERNOR 2012-12-12 15:34:48 +08:00
thread_info.h fork: protect architectures where THREAD_SIZE >= PAGE_SIZE against fork bombs 2012-12-18 15:02:13 -08:00
threads.h
ti_wilink_st.h
tick.h Merge branch 'nohz/printk-v8' into irq/core 2013-02-05 00:48:46 +01:00
tifm.h
timb_dma.h
timb_gpio.h
time-armada-370-xp.h
time.h arm-soc: cleanups 2013-02-21 14:58:40 -08:00
timekeeper_internal.h
timer.h
timerfd.h
timeriomem-rng.h
timerqueue.h
timex.h
topology.h
toshiba.h
tpm_command.h
tpm.h
trace_clock.h
trace_seq.h
tracehook.h
tracepoint.h
transport_class.h
tsacct_kern.h cputime: Use accessors to read task cputime stats 2013-01-27 19:23:31 +01:00
tty_driver.h tty: Document required behavior of tty driver close() 2013-02-04 15:40:28 -08:00
tty_flip.h TTY: switch tty_schedule_flip 2013-01-15 22:43:15 -08:00
tty_ldisc.h pps: Move timestamp read into PPS code proper 2013-02-13 10:13:58 -08:00
tty.h tty: Added a CONFIG_TTY option to allow removal of TTY 2013-01-18 16:15:27 -08:00
typecheck.h
types.h mm, oom: fix race when specifying a thread as the oom origin 2012-12-11 17:22:27 -08:00
u64_stats_sync.h
uaccess.h
ucb1400.h
udp.h
uidgid.h
uinput.h
uio_driver.h
uio.h
uprobes.h uprobes: Introduce uprobe_apply() 2013-02-08 18:28:04 +01:00
usb_usual.h
usb.h USB: add usb_hcd_{start,end}_port_resume 2013-01-25 15:06:01 -08:00
usbdevice_fs.h
user_namespace.h
user-return-notifier.h
user.h
uts.h
utsname.h
uuid.h
uwb.h
vermagic.h
vexpress.h
vfio.h
vfs.h
vga_switcheroo.h
vgaarb.h
via_i2c.h
via-core.h
via-gpio.h
via.h
video_output.h
videodev2.h
virtio_config.h
virtio_console.h
virtio_mmio.h
virtio_ring.h
virtio_scsi.h
virtio.h virtio: add drv_to_virtio to make code clearly 2012-12-18 15:20:43 +10:30
vlynq.h
vm_event_item.h mm: don't wait on congested zones in balance_pgdat() 2013-02-23 17:50:15 -08:00
vmalloc.h
vme.h
vmstat.h mm: numa: handle side-effects in count_vm_numa_events() for !CONFIG_NUMA_BALANCING 2013-02-23 17:50:16 -08:00
vmw_vmci_api.h VMCI: Some header and config files. 2013-01-08 16:15:57 -08:00
vmw_vmci_defs.h VMCI: Some header and config files. 2013-01-08 16:15:57 -08:00
vt_buffer.h
vt_kern.h
vt.h
vtime.h cputime: Safely read cputime of full dynticks CPUs 2013-01-27 20:35:47 +01:00
w1-gpio.h
wait.h
wanrouter.h wanrouter: delete now orphaned header content, files/drivers 2013-01-31 19:56:35 -05:00
watchdog.h watchdog: WatchDog Timer Driver Core: fix comment 2012-12-19 22:24:55 +01:00
wireless.h
wl12xx.h wlcore: move wl12xx_platform_data up and make it truly optional 2013-02-08 10:05:02 +02:00
wm97xx.h
workqueue.h workqueue: rename cpu_workqueue to pool_workqueue 2013-02-13 19:29:12 -08:00
writeback.h writeback: remove nr_pages_dirtied arg from balance_dirty_pages_ratelimited_nr() 2012-12-11 17:22:21 -08:00
xattr.h
xilinxfb.h
xz.h
yam.h
z2_battery.h
zconf.h
zlib.h
zorro_ids.h
zorro.h
zutil.h