Mel Gorman
56fd56b868
Bias the location of pages freed for min_free_kbytes in the same MAX_ORDER_NR_PAGES blocks
...
The standard buddy allocator always favours the smallest block of pages.
The effect of this is that the pages free to satisfy min_free_kbytes tends
to be preserved since boot time at the same location of memory ffor a very
long time and as a contiguous block. When an administrator sets the
reserve at 16384 at boot time, it tends to be the same MAX_ORDER blocks
that remain free. This allows the occasional high atomic allocation to
succeed up until the point the blocks are split. In practice, it is
difficult to split these blocks but when they do split, the benefit of
having min_free_kbytes for contiguous blocks disappears. Additionally,
increasing min_free_kbytes once the system has been running for some time
has no guarantee of creating contiguous blocks.
On the other hand, CONFIG_PAGE_GROUP_BY_MOBILITY favours splitting large
blocks when there are no free pages of the appropriate type available. A
side-effect of this is that all blocks in memory tends to be used up and
the contiguous free blocks from boot time are not preserved like in the
vanilla allocator. This can cause a problem if a new caller is unwilling
to reclaim or does not reclaim for long enough.
A failure scenario was found for a wireless network device allocating
order-1 atomic allocations but the allocations were not intense or frequent
enough for a whole block of pages to be preserved for MIGRATE_HIGHALLOC.
This was reproduced on a desktop by booting with mem=256mb, forcing the
driver to allocate at order-1, running a bittorrent client (downloading a
debian ISO) and building a kernel with -j2.
This patch addresses the problem on the desktop machine booted with
mem=256mb. It works by setting aside a reserve of MAX_ORDER_NR_PAGES
blocks, the number of which depends on the value of min_free_kbytes. These
blocks are only fallen back to when there is no other free pages. Then the
smallest possible page is used just like the normal buddy allocator instead
of the largest possible page to preserve contiguous pages The pages in free
lists in the reserve blocks are never taken for another migrate type. The
results is that even if min_free_kbytes is set to a low value, contiguous
blocks will be preserved in the MIGRATE_RESERVE blocks.
This works better than the vanilla allocator because if min_free_kbytes is
increased, a new reserve block will be chosen based on the location of
reclaimable pages and the block will free up as contiguous pages. In the
vanilla allocator, no effort is made to target a block of pages to free as
contiguous pages and min_free_kbytes pages are scattered randomly.
This effect has been observed on the test machine. min_free_kbytes was set
initially low but it was kept as a contiguous free block within
MIGRATE_RESERVE. min_free_kbytes was then set to a higher value and over a
period of time, the free blocks were within the reserve and coalescing.
How long it takes to free up depends on how quickly LRU is rotating.
Amusingly, this means that more activity will free the blocks faster.
This mechanism potentially replaces MIGRATE_HIGHALLOC as it may be more
effective than grouping contiguous free pages together. It all depends on
whether the number of active atomic high allocations exceeds
min_free_kbytes or not. If the number of active allocations exceeds
min_free_kbytes, it's worth it but maybe in that situation, min_free_kbytes
should be set higher. Once there are no more reports of allocation
failures, a patch will be submitted that backs out MIGRATE_HIGHALLOC and
see if the reports stay missing.
Credit to Mariusz Kozlowski for discovering the problem, describing the
failure scenario and testing patches and scenarios.
[akpm@linux-foundation.org: cleanups]
Signed-off-by: Mel Gorman <mel@csn.ul.ie>
Acked-by: Andy Whitcroft <apw@shadowen.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2007-10-16 09:43:00 -07:00
..
amba
byteorder
dvb
V4L/DVB (5893): DVB: fix includes of video.h when __KERNEL__ is undefined
2007-07-30 16:26:27 -03:00
hdlc
isdn
lockd
knfsd: lockd: nfsd4: use same grace period for lockd and nfsd4
2007-07-17 10:23:07 -07:00
mlx4
IB/mlx4: Implement FMRs
2007-10-09 19:59:16 -07:00
mmc
mmc: add led trigger
2007-09-24 07:15:48 +02:00
mtd
[MTD] [NOR] fix ctrl-alt-del can't reboot for intel flash bug
2007-10-13 14:36:18 +01:00
netfilter
[NETFILTER]: Replace sk_buff ** with sk_buff *
2007-10-15 12:26:29 -07:00
netfilter_arp
[NETFILTER]: Replace sk_buff ** with sk_buff *
2007-10-15 12:26:29 -07:00
netfilter_bridge
[NETFILTER]: Replace sk_buff ** with sk_buff *
2007-10-15 12:26:29 -07:00
netfilter_ipv4
[NETFILTER]: Replace sk_buff ** with sk_buff *
2007-10-15 12:26:29 -07:00
netfilter_ipv6
[NETFILTER]: Replace sk_buff ** with sk_buff *
2007-10-15 12:26:29 -07:00
nfsd
knfsd: 64 bit ino support for NFS server
2007-10-09 18:31:57 -04:00
raid
[BLOCK] Get rid of request_queue_t typedef
2007-07-24 09:28:11 +02:00
rtc
rtc: add support for the ST M48T59 RTC
2007-07-17 10:23:09 -07:00
spi
mmc_spi host driver
2007-09-23 22:17:27 +02:00
ssb
[SSB]: add Sonics Silicon Backplane bus support
2007-10-10 16:51:36 -07:00
sunrpc
Merge git://git.linux-nfs.org/pub/linux/nfs-2.6
2007-10-15 10:47:35 -07:00
tc_act
[PKT_SCHED]: Add stateless NAT
2007-10-10 16:53:11 -07:00
tc_ematch
usb
docbook: fix usb content
2007-10-15 17:56:36 -07:00
8250_pci.h
a.out.h
ac97_codec.h
acct.h
acpi.h
ACPI: autoload modules - Create ACPI alias interface
2007-07-23 13:56:16 -04:00
acpi_pmtmr.h
adb.h
adfs_fs.h
adfs_fs_i.h
adfs_fs_sb.h
aer.h
PCI AER: fix warnings when PCIEAER=n
2007-09-11 04:22:16 -07:00
affs_hardblocks.h
agp_backend.h
agpgart.h
long vs. unsigned long - low-hanging fruits in drivers
2007-10-14 12:41:51 -07:00
aio.h
AIO sparse fix (type of ki_flags)
2007-07-19 10:04:43 -07:00
aio_abi.h
amifd.h
amifdreg.h
amigaffs.h
anon_inodes.h
apm-emulation.h
apm_bios.h
[x86 setup] Make struct apm_bios_info cross-architecture
2007-07-25 12:02:21 -07:00
arcdevice.h
arcnet endianness annotations
2007-10-10 16:51:59 -07:00
arcfb.h
async_tx.h
async_tx: fix kmap_atomic usage in async_memcpy
2007-07-20 08:44:19 -07:00
ata.h
libata: add human-readable error value decoding
2007-10-12 14:55:45 -04:00
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_pdc.h
atmioc.h
atmlec.h
atmmpc.h
atmppp.h
atmsap.h
atmsvc.h
attribute_container.h
Remove unnecessary includes of spinlock.h under include/linux
2007-07-16 09:05:42 -07:00
audit.h
[XFRM]: xfrm audit calls
2007-10-10 16:49:02 -07:00
auto_fs.h
auto_fs4.h
auxvec.h
ax25.h
b1lli.h
b1pcmcia.h
backing-dev.h
remove mm/backing-dev.c:congestion_wait_interruptible()
2007-07-16 09:05:52 -07:00
backlight.h
backlight: Convert corgi backlight driver into a more generic driver
2007-10-11 22:24:13 +01:00
baycom.h
bcd.h
bfs_fs.h
binfmts.h
mm: variable length argument support
2007-07-19 10:04:45 -07:00
bio.h
Drop 'size' argument from bio_endio and bi_end_io
2007-10-10 09:25:57 +02:00
bit_spinlock.h
bitmap.h
bitops.h
bitrev.h
blkdev.h
[BLOCK] Move sector_div() from blkdev.h to kernel.h
2007-10-12 12:40:38 +02:00
blkpg.h
blktrace_api.h
[BLOCK] Better fix for do_blk_trace_setup() for !CONFIG_BLOCK
2007-10-12 12:50:07 +02:00
blockgroup_lock.h
bootmem.h
bottom_half.h
bpqether.h
bsg.h
[SCSI] bsg: update sg_io_v4 structure
2007-07-31 10:43:05 -05:00
buffer_head.h
fs: restore nobh
2007-10-16 09:42:58 -07:00
bug.h
generic bug: use show_regs() instead of dump_stack()
2007-07-16 09:05:51 -07:00
cache.h
calc64.h
capability.h
Remove unnecessary includes of spinlock.h under include/linux
2007-07-16 09:05:42 -07:00
capi.h
cciss_ioctl.h
cd1400.h
cdev.h
cdk.h
cdrom.h
cdrom: replace hard-coded constants by kernel.h macro.
2007-07-16 09:05:48 -07:00
cfag12864b.h
chio.h
circ_buf.h
clk.h
clockchips.h
clockevents: introduce force broadcast notifier
2007-10-14 22:57:45 +02:00
clocksource.h
[IA64] Convert to generic timekeeping/clocksource
2007-07-20 11:22:30 -07:00
cm4000_cs.h
cn_proc.h
coda.h
coda_cache.h
coda_fs_i.h
coda_linux.h
coda: remove CODA_STORE/CODA_RELEASE upcalls
2007-07-21 17:49:14 -07:00
coda_psdev.h
coda: remove CODA_STORE/CODA_RELEASE upcalls
2007-07-21 17:49:14 -07:00
coff.h
com20020.h
compat.h
compiler-gcc.h
compiler-gcc3.h
compiler-gcc4.h
x86: Support __attribute__((__cold__)) in gcc 4.3
2007-07-21 18:37:08 -07:00
compiler-intel.h
compiler.h
make __chk_{user,io}_ptr() accept pointers to volatile
2007-07-26 11:11:57 -07:00
completion.h
comstats.h
concap.h
configfs.h
connector.h
[NET]: make netlink user -> kernel interface synchronious
2007-10-10 21:15:29 -07:00
console.h
Remove unnecessary includes of spinlock.h under include/linux
2007-07-16 09:05:42 -07:00
console_struct.h
consolemap.h
Kernel utf-8 handling
2007-07-16 09:05:46 -07:00
const.h
cpu.h
PM: Fix dependencies of CONFIG_SUSPEND and CONFIG_HIBERNATION
2007-08-31 01:42:22 -07:00
cpufreq.h
[CPUFREQ] implement !CONFIG_CPU_FREQ stub for cpufreq_unregister_notifier()
2007-10-04 18:40:57 -04:00
cpumask.h
cpuset.h
Memoryless nodes: Use N_HIGH_MEMORY for cpusets
2007-10-16 09:42:59 -07:00
cramfs_fs.h
cramfs_fs_sb.h
crash_dump.h
crc-ccitt.h
crc-itu-t.h
crc7.h
CRC7 support
2007-07-17 10:23:04 -07:00
crc16.h
crc32.h
crc32c.h
crypto.h
[CRYPTO] api: Fixed crypto_*_reqsize return type
2007-10-10 16:55:42 -07:00
cryptohash.h
ctype.h
cuda.h
cyclades.h
cyclomx.h
cycx_cfm.h
cycx_drv.h
cycx_x25.h
dcache.h
dccp.h
[DCCP]: Tidy-up -- minisock initialisation
2007-10-10 16:54:36 -07:00
dcookies.h
[CELL] oprofile: add support to OProfile for profiling CELL BE SPUs
2007-07-20 21:42:24 +02:00
debug_locks.h
debugfs.h
debugfs: helper for decimal challenged
2007-10-12 14:51:03 -07:00
delay.h
delayacct.h
device-mapper.h
device.h
Driver core: change add_uevent_var to use a struct
2007-10-12 14:51:01 -07:00
devpts_fs.h
dio.h
dirent.h
display.h
dlm.h
dlm_device.h
dlm_netlink.h
dm-ioctl.h
dm9000.h
dma-mapping.h
introduce DMA_MASK_NONE as a signal for unable to do DMA
2007-10-16 09:42:50 -07:00
dmaengine.h
dmaengine: make clients responsible for managing channels
2007-07-13 08:06:13 -07:00
dmapool.h
dmi.h
drivers/firmware: const-ify DMI API and internals
2007-10-09 20:22:20 -04:00
dn.h
dnotify.h
dqblk_v1.h
dqblk_v2.h
dqblk_xfs.h
ds1wm.h
ds1286.h
ds17287rtc.h
Remove unnecessary includes of spinlock.h under include/linux
2007-07-16 09:05:42 -07:00
dtlk.h
edac.h
drivers/edac: mod assert_error check
2007-07-19 10:04:54 -07:00
edd.h
Remove old i386 setup code
2007-07-12 10:55:56 -07:00
eeprom_93cx6.h
ax88796: add 93cx6 eeprom support
2007-10-10 16:53:56 -07:00
efi.h
efs_dir.h
efs_fs.h
knfsd: exportfs: remove iget abuse
2007-07-17 10:23:06 -07:00
efs_fs_i.h
efs_fs_sb.h
efs_vh.h
eisa.h
elevator.h
[BLOCK] Get rid of request_queue_t typedef
2007-07-24 09:28:11 +02:00
elf-em.h
[CELL] oprofile: add support to OProfile for profiling CELL BE SPUs
2007-07-20 21:42:24 +02:00
elf-fdpic.h
elf.h
[POWERPC] spufs: Cleanup ELF coredump extra notes logic
2007-09-19 15:12:19 +10:00
elfcore.h
elfnote.h
use elfnote.h to generate vsyscall notes.
2007-07-18 08:47:40 -07:00
err.h
errno.h
errqueue.h
etherdevice.h
[NET]: Move hardware header operations out of netdevice.
2007-10-10 16:52:52 -07:00
ethtool.h
[ETHTOOL]: Introduce ->{get,set}_priv_flags, ETHTOOL_[GS]PFLAGS
2007-10-10 16:48:08 -07:00
eventfd.h
eventpoll.h
exportfs.h
knfsd: exportfs: add procedural interface for NFSD
2007-07-17 10:23:06 -07:00
ext2_fs.h
ext2_fs_sb.h
ext2: statfs speed up
2007-07-16 09:05:52 -07:00
ext3_fs.h
ext3_fs_i.h
ext3_fs_sb.h
ext3: statfs speed up
2007-07-16 09:05:52 -07:00
ext3_jbd.h
ext4_fs.h
ext4: Expand extra_inodes space per the s_{want,min}_extra_isize fields
2007-07-18 09:19:57 -04:00
ext4_fs_extents.h
Change on-disk format to support 2^15 uninitialized extents
2007-07-18 09:02:56 -04:00
ext4_fs_i.h
ext4: Add nanosecond timestamps
2007-07-18 09:15:20 -04:00
ext4_fs_sb.h
ext4: Add nanosecond timestamps
2007-07-18 09:15:20 -04:00
ext4_jbd2.h
fadvise.h
falloc.h
sys_fallocate() implementation on i386, x86_64 and powerpc
2007-07-17 21:42:44 -04:00
fault-inject.h
fb.h
OMAP: add TI OMAP1610 accelerator entry.
2007-07-17 10:23:13 -07:00
fcdevice.h
fcntl.h
fd.h
fd1772.h
fddidevice.h
fdreg.h
fib_rules.h
file.h
O_CLOEXEC for SCM_RIGHTS
2007-07-16 09:05:45 -07:00
filter.h
firewire-cdev.h
firewire-constants.h
firmware.h
flat.h
font.h
freezer.h
Introduce CONFIG_SUSPEND for suspend-to-Ram and standby
2007-07-29 16:45:38 -07:00
fs.h
fs: remove some AOP_TRUNCATED_PAGE
2007-10-16 09:42:58 -07:00
fs_enet_pd.h
fs_enet: Be an of_platform device when CONFIG_PPC_CPM_NEW_BINDING is set.
2007-10-10 16:54:03 -07:00
fs_stack.h
fs_struct.h
fs_uart_pd.h
fsl_devices.h
Fix RGMII-ID handling in gianfar
2007-07-18 18:29:37 -04:00
fsnotify.h
fuse.h
fuse warning fix
2007-07-16 09:05:41 -07:00
futex.h
gameport.h
gen_stats.h
genalloc.h
generic_acl.h
generic_serial.h
genetlink.h
[GENETLINK]: Dynamic multicast groups.
2007-07-18 15:47:52 -07:00
genhd.h
[PARTITION] MSDOS: Fix Sun num_partitions handling.
2007-07-30 00:27:28 -07:00
getcpu.h
gfp.h
Group short-lived and reclaimable kernel allocations
2007-10-16 09:43:00 -07:00
gfs2_ondisk.h
[GFS2] Fix quota do_list operation hang
2007-10-10 08:55:27 +01:00
gigaset_dev.h
gpio_keys.h
Input: gpio-keys - add suspend/resume support
2007-09-26 00:01:17 -04:00
gpio_mouse.h
hardirq.h
harrier_defs.h
hash.h
hayesesp.h
hdlc.h
hdlcdrv.h
long vs. unsigned long - low-hanging fruits in drivers
2007-10-14 12:41:51 -07:00
hdpu_features.h
hdreg.h
hdsmart.h
hid-debug.h
hid.h
HID: fix HIDIOCGRDESC memory access in hidraw
2007-10-15 08:12:00 -07:00
hiddev.h
hidraw.h
HID: fix HIDIOCGRDESC memory access in hidraw
2007-10-15 08:12:00 -07:00
highmem.h
Remove alloc_zeroed_user_highpage()
2007-07-19 10:04:41 -07:00
highuid.h
hil.h
hil_mlc.h
hippidevice.h
hp_sdc.h
hpet.h
hrtimer.h
Add a flag to indicate deferrable timers in /proc/timer_stats
2007-07-16 09:05:45 -07:00
htirq.h
hugetlb.h
hugepage: fix broken check for offset alignment in hugepage mappings
2007-08-31 01:42:23 -07:00
hw_random.h
hwmon-sysfs.h
hwmon-vid.h
hwmon.h
hwmon: Convert from class_device to device
2007-10-09 22:56:30 -04:00
hysdn_if.h
i2c-algo-bit.h
i2c-algo-pca.h
i2c-algo-pcf.h
i2c-algo-sgi.h
i2c-dev.h
i2c: Move i2c-dev interfaces to i2c-dev.h
2007-10-13 23:56:32 +02:00
i2c-gpio.h
i2c-id.h
V4L/DVB (6149): Add I2C_HW_B_CX23885 for Conexant 23885/23887 PCIe bridge
2007-10-09 22:07:51 -03:00
i2c-ocores.h
i2c-pnx.h
i2c-pxa.h
i2c.h
i2c: Rename the PEC functionality bit
2007-10-13 23:56:33 +02:00
i2o-dev.h
i2o.h
mm: Remove slab destructors from kmem_cache_create().
2007-07-20 10:11:58 +09:00
i8k.h
ibmtr.h
icmp.h
icmpv6.h
ide.h
ide: move ide_config_drive_speed() calls to upper layers (take 2)
2007-10-13 17:47:51 +02:00
idr.h
lib: add idr_remove_all
2007-07-16 09:05:34 -07:00
ieee80211.h
[PATCH] wireless networking: move frame inline functions to generic header
2007-10-10 16:52:59 -07:00
if.h
if_addr.h
if_arcnet.h
arcnet endianness annotations
2007-10-10 16:51:59 -07:00
if_arp.h
if_bonding.h
if_bridge.h
[NETFILTER]: Replace sk_buff ** with sk_buff *
2007-10-15 12:26:29 -07:00
if_cablemodem.h
if_ec.h
if_eql.h
[NET] drivers/net: statistics cleanup #1 -- save memory and shrink code
2007-10-10 16:51:16 -07:00
if_ether.h
[NET]: Move hardware header operations out of netdevice.
2007-10-10 16:52:52 -07:00
if_fc.h
if_fddi.h
if_frad.h
if_hippi.h
if_infiniband.h
if_link.h
[NET]: netlink support for moving devices between network namespaces.
2007-10-10 16:49:13 -07:00
if_ltalk.h
if_macvlan.h
[NET]: Add macvlan driver
2007-07-14 18:55:06 -07:00
if_packet.h
if_plip.h
if_ppp.h
[L2TP]: Changes to existing ppp and socket kernel headers for L2TP
2007-07-10 22:15:58 -07:00
if_pppol2tp.h
[PPPOL2TP]: Fix endianness annotations.
2007-08-26 18:35:42 -07:00
if_pppox.h
pppoe: endianness
2007-10-10 16:52:04 -07:00
if_shaper.h
[NET]: Move hardware header operations out of netdevice.
2007-10-10 16:52:52 -07:00
if_slip.h
if_strip.h
if_tr.h
if_tun.h
[NET] drivers/net: statistics cleanup #1 -- save memory and shrink code
2007-10-10 16:51:16 -07:00
if_tunnel.h
if_vlan.h
[NET]: Make the device list and device lookups per namespace.
2007-10-10 16:49:10 -07:00
if_wanpipe.h
igmp.h
in.h
in6.h
in_route.h
inet.h
inet_diag.h
inet_lro.h
fix endianness bug in inet_lro
2007-10-14 12:41:52 -07:00
inetdevice.h
init.h
Add assembler equivalents to __init{,date}_refok
2007-10-16 09:42:49 -07:00
init_task.h
[NETNS]: Fix allnoconfig compilation error.
2007-10-10 16:49:21 -07:00
initrd.h
inotify.h
input-polldev.h
input.h
Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input
2007-10-15 13:41:39 -07:00
interrupt.h
provide stubs for enable_irq_wake() and disable_irq_wake()
2007-10-16 09:42:50 -07:00
io.h
uninline check_signature()
2007-07-16 09:05:50 -07:00
ioc3.h
ioc4.h
ioctl.h
ioport.h
ioprio.h
cfq: async queue allocation per priority
2007-07-20 10:06:38 +02:00
ip.h
ip6_tunnel.h
ipc.h
remove CONFIG_UTS_NS and CONFIG_IPC_NS
2007-07-16 09:05:47 -07:00
ipmi.h
ipmi_msgdefs.h
ipmi_smi.h
ipsec.h
ipv6.h
[IPSEC]: Get rid of ipv6_{auth,esp,comp}_hdr
2007-10-10 16:55:55 -07:00
ipv6_route.h
ipx.h
irda.h
[IrDA]: EP7211 IR driver port to the latest SIR API
2007-07-21 19:07:33 -07:00
irq.h
irq.h fix kernel-doc
2007-07-31 15:39:41 -07:00
irq_cpustat.h
irqflags.h
irqreturn.h
isa.h
Fix non-ISA link error in drivers/scsi/advansys.c
2007-09-16 21:13:58 -07:00
isapnp.h
isdn.h
[ISDN]: Remove local copy of device name to make sure renames work.
2007-10-15 12:26:37 -07:00
isdn_divertif.h
isdn_ppp.h
isdnif.h
isicom.h
iso_fs.h
istallion.h
ivtv.h
V4L/DVB (6123): ivtv: move ivtv.h public header to include/linux
2007-10-09 22:07:28 -03:00
ivtvfb.h
V4L/DVB (6119): ivtvfb: renamed ivtv-fb to ivtvfb, move header to include/linux
2007-10-09 22:07:23 -03:00
ixjuser.h
jbd.h
docbook: fix filesystems content
2007-10-15 17:56:36 -07:00
jbd2.h
jbd2: Fix CONFIG_JBD_DEBUG ifdef to be CONFIG_JBD2_DEBUG
2007-07-18 08:57:06 -04:00
jffs2.h
[JFFS2] Add LZO compression support.
2007-07-11 15:03:53 +01:00
jhash.h
jiffies.h
slow down printk during boot
2007-10-16 09:42:49 -07:00
journal-head.h
joystick.h
kallsyms.h
kallsyms: make KSYM_NAME_LEN include space for trailing '\0'
2007-07-17 10:23:03 -07:00
kbd_diacr.h
kbd_kern.h
m68k/mac: Make mac_hid_mouse_emulate_buttons() declaration visible
2007-08-22 19:52:45 -07:00
Kbuild
[KBUILD]: Sanitize tc_ematch headers.
2007-08-26 18:35:34 -07:00
kd.h
kdebug.h
kdebug.h: forward-declare struct struct notifier_block
2007-07-31 15:39:40 -07:00
kdev_t.h
kernel.h
[BLOCK] Move sector_div() from blkdev.h to kernel.h
2007-10-12 12:40:38 +02:00
kernel_stat.h
sched: guest CPU accounting: add guest-CPU /proc/stat field
2007-10-15 17:00:19 +02:00
kernelcapi.h
Use mutex instead of semaphore in CAPI 2.0 driver
2007-07-17 10:23:05 -07:00
kexec.h
key-ui.h
key.h
keyboard.h
Merge master.kernel.org:/pub/scm/linux/kernel/git/torvalds/linux-2.6
2007-10-12 21:27:47 -04:00
keyctl.h
kfifo.h
klist.h
kmalloc_sizes.h
kmod.h
usermodehelper: Tidy up waiting
2007-07-18 08:47:40 -07:00
kobj_map.h
kobject.h
kobject: update the copyrights
2007-10-12 14:51:12 -07:00
kprobes.h
jprobes: make jprobes a little safer for users
2007-07-19 10:04:44 -07:00
kref.h
ks0108.h
kthread.h
ktime.h
[KTIME]: Introduce ktime_sub_ns and ktime_sub_us
2007-10-10 16:48:12 -07:00
kvm.h
KVM: Replace enum by #define
2007-10-13 10:18:29 +02:00
kvm_para.h
lapb.h
latency.h
lcd.h
backlight: Convert from struct class_device to struct device
2007-07-16 01:20:23 +01:00
leds.h
leds: Add missing include for leds.h
2007-09-11 22:24:45 +01:00
lguest.h
Provide timespec to guests rather than jiffies clock.
2007-07-28 19:54:33 -07:00
lguest_bus.h
lguest: documentation III: Drivers
2007-07-26 11:35:17 -07:00
lguest_launcher.h
lguest: documentation III: Drivers
2007-07-26 11:35:17 -07:00
libata.h
[libata] struct pci_dev related cleanups
2007-10-12 14:55:47 -04:00
libps2.h
license.h
limits.h
Remove CHILD_MAX
2007-07-17 10:23:03 -07:00
linkage.h
linux_logo.h
fbdev: Add fb_append_extra_logo()
2007-07-17 10:23:13 -07:00
list.h
[NETNS]: Cleanup list walking in setup_net and cleanup_net
2007-10-10 16:51:35 -07:00
llc.h
lm_interface.h
lock_dlm_plock.h
lockdep.h
lockdep: annotate rcu_read_{,un}lock{,_bh}
2007-10-11 22:11:12 +02:00
log2.h
loop.h
loop.h build fix
2007-07-24 12:24:59 -07:00
lp.h
lzo.h
LZO1X: fix lzo1x_worst_compress
2007-07-16 09:05:34 -07:00
m41t00.h
m48t86.h
magic.h
KVM: Remove kvmfs in favor of the anonymous inodes source
2007-07-16 12:05:49 +03:00
major.h
xen: add virtual block device driver.
2007-07-18 08:47:45 -07:00
maple.h
sh: Add maple bus support for the SEGA Dreamcast.
2007-09-21 15:55:55 +09:00
matroxfb.h
mbcache.h
mc6821.h
mc146818rtc.h
mca-legacy.h
mca.h
mdio-bitbang.h
Generic bitbanged MDIO library
2007-10-10 16:54:03 -07:00
memory.h
memory_hotplug.h
Clean up duplicate includes in include/linux/memory_hotplug.h
2007-10-16 09:42:52 -07:00
mempolicy.h
Mem Policy: add MPOL_F_MEMS_ALLOWED get_mempolicy() flag
2007-10-16 09:42:54 -07:00
mempool.h
meye.h
migrate.h
mii.h
minix_fs.h
miscdevice.h
mm.h
move mm_struct and vm_area_struct
2007-10-16 09:42:53 -07:00
mm_inline.h
mm_types.h
move mm_struct and vm_area_struct
2007-10-16 09:42:53 -07:00
mman.h
mmtimer.h
mmzone.h
Bias the location of pages freed for min_free_kbytes in the same MAX_ORDER_NR_PAGES blocks
2007-10-16 09:43:00 -07:00
mnt_namespace.h
namespace: ensure clone_flags are always stored in an unsigned long
2007-07-16 09:05:48 -07:00
mod_devicetable.h
i2c: Kill struct i2c_device_id
2007-10-13 23:56:29 +02:00
module.h
Remove unnecessary includes of spinlock.h under include/linux
2007-07-16 09:05:42 -07:00
moduleloader.h
moduleparam.h
mount.h
mpage.h
mqueue.h
mroute.h
msdos_fs.h
fat: gcc 4.3 warning fix
2007-07-16 09:05:42 -07:00
msg.h
msi.h
mtio.h
mutex-debug.h
mutex.h
lockdep: fixup mutex annotations
2007-10-11 22:11:12 +02:00
mv643xx.h
[WATCHDOG] mv64x60_wdt: Add arch/powerpc platform support
2007-07-24 21:16:02 +00:00
n_r3964.h
namei.h
fs: remove path_walk export
2007-07-19 10:04:45 -07:00
nbd.h
ncp.h
ncp_fs.h
Remove the last few UMSDOS leftovers
2007-07-16 09:05:51 -07:00
ncp_fs_i.h
ncp_fs_sb.h
ncp_mount.h
ncp_no.h
neighbour.h
net.h
[NET]: Make socket creation namespace safe.
2007-10-10 16:49:07 -07:00
netdevice.h
net core: fix kernel-doc for new function parameters
2007-10-13 09:52:26 -07:00
netfilter.h
[NETFILTER]: Replace sk_buff ** with sk_buff *
2007-10-15 12:26:29 -07:00
netfilter_arp.h
netfilter_bridge.h
netfilter_decnet.h
netfilter_ipv4.h
[NETFILTER]: Replace sk_buff ** with sk_buff *
2007-10-15 12:26:29 -07:00
netfilter_ipv6.h
netlink.h
[NET]: make netlink user -> kernel interface synchronious
2007-10-10 21:15:29 -07:00
netpoll.h
[NET] netconsole: Support dynamic reconfiguration using configfs
2007-10-10 16:48:06 -07:00
netrom.h
nfs.h
nfs2.h
nfs3.h
nfs4.h
NFS4: on a O_EXCL OPEN make sure SETATTR sets the fields holding the verifier
2007-07-10 23:40:25 -04:00
nfs4_acl.h
nfs4_mount.h
NFS: Add the mount option "nosharecache"
2007-07-10 23:40:48 -04:00
nfs_fs.h
NFS: Add a boot parameter to disable 64 bit inode numbers
2007-10-09 17:20:52 -04:00
nfs_fs_i.h
nfs_fs_sb.h
NFSv4: Reduce the chances of an open_owner identifier collision
2007-07-10 23:40:39 -04:00
nfs_idmap.h
nfs_mount.h
NFS: Add the mount option "nosharecache"
2007-07-10 23:40:48 -04:00
nfs_page.h
NFS: Clean up write code...
2007-10-09 17:15:11 -04:00
nfs_xdr.h
NFS: Fake up 'wcc' attributes to prevent cache invalidation after write
2007-10-09 17:19:15 -04:00
nfsacl.h
nfsd_idmap.h
nl80211.h
[NL80211]: add netlink interface to cfg80211
2007-10-10 16:52:14 -07:00
nls.h
nmi.h
node.h
nodemask.h
Memoryless nodes: Add N_CPU node state
2007-10-16 09:42:58 -07:00
notifier.h
[NET]: Allow netdev REGISTER/CHANGENAME events to fail
2007-07-31 02:28:15 -07:00
nsc_gpio.h
nsproxy.h
[NET]: Add a network namespace parameter to tasks
2007-10-10 16:49:04 -07:00
nubus.h
numa.h
nvram.h
of.h
[POWERPC] Remove get_property and device_is_compatible
2007-08-17 11:01:58 +10:00
of_device.h
Begin consolidation of of_device.h
2007-07-20 13:41:56 +10:00
of_platform.h
[POWERPC] Constify of_platform_driver match_table
2007-07-22 21:30:59 +10:00
oom.h
oprofile.h
[CELL] oprofile: add support to OProfile for profiling CELL BE SPUs
2007-07-20 21:42:24 +02:00
page-flags.h
move page writeback acounting out of macros
2007-07-19 10:04:52 -07:00
pageblock-flags.h
Bias the location of pages freed for min_free_kbytes in the same MAX_ORDER_NR_PAGES blocks
2007-10-16 09:43:00 -07:00
pagemap.h
fs: introduce write_begin, write_end, and perform_write aops
2007-10-16 09:42:55 -07:00
pagevec.h
param.h
parport.h
parport_pc.h
parser.h
pata_platform.h
patchkey.h
pci-acpi.h
pci.h
PCI: Add 'nodomains' boot option, and pci_domains_supported global
2007-10-12 15:03:18 -07:00
pci_hotplug.h
pci_ids.h
8250_pci: Autodetect mainpine cards
2007-10-16 09:42:50 -07:00
pci_regs.h
PCI: modify PCI bridge control ISA flag for clarity
2007-10-12 15:03:18 -07:00
pcieport_if.h
pda_power.h
percpu.h
Remove unnecessary includes of spinlock.h under include/linux
2007-07-16 09:05:42 -07:00
percpu_counter.h
percpu_counters(): use cpu notifiers
2007-07-16 09:05:41 -07:00
personality.h
pfkeyv2.h
pfn.h
pg.h
phantom.h
phonedev.h
phy.h
PHYLIB: IRQ event workqueue handling fixes
2007-10-10 16:53:55 -07:00
phy_fixed.h
PHY fixed driver: rework release path and update phy_id notation
2007-10-10 16:53:50 -07:00
pid.h
pid_namespace.h
namespace: ensure clone_flags are always stored in an unsigned long
2007-07-16 09:05:48 -07:00
pipe_fs_i.h
pkt_cls.h
[NET_SCHED]: ematch: module autoloading
2007-07-11 19:46:26 -07:00
pkt_sched.h
[NET_SCHED]: Making rate table lookups more flexible.
2007-10-10 16:49:20 -07:00
pktcdvd.h
platform_device.h
Driver core: Make platform_device.id an int
2007-10-12 14:51:07 -07:00
plist.h
pm.h
Fallout from "Remove fs.h from mm.h" patch
2007-07-30 12:25:49 -07:00
pm_legacy.h
pmu.h
[POWERPC] Fix undefined reference to device_power_up/resume
2007-08-25 16:58:27 +10:00
pnp.h
PNP: fix up after Lindent
2007-07-26 11:35:21 -07:00
pnpbios.h
PNP: fix up after Lindent
2007-07-26 11:35:21 -07:00
poison.h
poll.h
Fix select on /proc files without ->poll
2007-09-11 17:21:20 -07:00
posix-timers.h
posix_acl.h
posix_acl_xattr.h
posix_types.h
power_supply.h
ppdev.h
ppp-comp.h
ppp_channel.h
ppp_defs.h
prctl.h
move seccomp from /proc to a prctl
2007-07-16 09:05:50 -07:00
preempt.h
[PATCH] sched: arch preempt notifier mechanism
2007-07-26 13:40:43 +02:00
prefetch.h
fix typo in prefetch.h
2007-07-16 09:05:46 -07:00
prio_tree.h
proc_fs.h
[NET]: Fix race when opening a proc file while a network namespace is exiting.
2007-10-10 16:49:22 -07:00
profile.h
ps2esdi.h
ptrace.h
PTRACE_POKEDATA consolidation
2007-07-17 10:23:03 -07:00
qnx4_fs.h
qnxtypes.h
quicklist.h
quota.h
quotaio_v1.h
quotaio_v2.h
quotaops.h
radeonfb.h
radix-tree.h
radix-tree: use indirect bit
2007-10-16 09:42:53 -07:00
raid_class.h
ramfs.h
random.h
raw.h
rbtree.h
rcupdate.h
lockdep: annotate rcu_read_{,un}lock{,_bh}
2007-10-11 22:11:12 +02:00
reboot.h
Add common orderly_poweroff()
2007-07-18 08:47:40 -07:00
reciprocal_div.h
reiserfs_acl.h
reiserfs_fs.h
fix preprocessor idiocy in reiserfs
2007-07-28 19:42:22 -07:00
reiserfs_fs_i.h
reiserfs_fs_sb.h
more low-hanging fruits - kernel, fs, lib signedness
2007-10-14 12:41:52 -07:00
reiserfs_xattr.h
relay.h
resource.h
resume-trace.h
x86: PM_TRACE support
2007-07-21 18:37:10 -07:00
rfkill.h
[RFKILL]: Add support for hardware-only rfkill buttons
2007-10-10 16:54:11 -07:00
rio.h
rio_drv.h
rio_ids.h
rio_regs.h
rmap.h
romfs_fs.h
root_dev.h
rose.h
route.h
rslib.h
rtc-v3020.h
rtc.h
rtmutex.h
rtnetlink.h
[IPv6]: Export userland ND options through netlink (RDNSS support)
2007-10-10 21:22:05 -07:00
rwsem-spinlock.h
rwsem.h
rxrpc.h
sc26198.h
scatterlist.h
scc.h
sched.h
move mm_struct and vm_area_struct
2007-10-16 09:42:53 -07:00
screen_info.h
Clean up struct screen_info (<linux/screen_info.h>)
2007-07-12 10:55:54 -07:00
sctp.h
[SCTP]: protocol definitions for SCTP-AUTH implementation
2007-10-10 16:51:28 -07:00
scx200.h
scx200_gpio.h
long vs. unsigned long - low-hanging fruits in drivers
2007-10-14 12:41:51 -07:00
sdla.h
seccomp.h
make seccomp zerocost in schedule
2007-07-16 09:05:50 -07:00
securebits.h
security.h
fix NULL pointer dereference in __vm_enough_memory()
2007-08-22 19:52:45 -07:00
selection.h
selection.h: add tty_struct forward declaration
2007-08-22 19:52:47 -07:00
selinux.h
selinux_netlink.h
sem.h
seq_file.h
[FS] seq_file: Introduce the seq_open_private()
2007-10-10 16:55:33 -07:00
seqlock.h
serial.h
serial: convert early_uart to earlycon for 8250
2007-07-16 09:05:35 -07:00
serial167.h
serial_8250.h
Use resource_size_t for serial port IO addresses
2007-07-24 12:24:58 -07:00
serial_core.h
wake up from a serial port
2007-10-16 09:42:50 -07:00
serial_pnx8xxx.h
serial_reg.h
Serial 8250: handle saving the clear-on-read bits from the LSR and MSR
2007-08-22 19:52:44 -07:00
serialP.h
serio.h
Input: add driver for Fujitsu serial touchscreens
2007-07-18 00:37:01 -04:00
shm.h
shmem_fs.h
signal.h
x86: i386-show-unhandled-signals-v3
2007-07-22 11:03:37 -07:00
signalfd.h
signalfd simplification
2007-09-20 13:19:59 -07:00
skbuff.h
Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6
2007-10-15 14:06:58 -07:00
slab.h
Group short-lived and reclaimable kernel allocations
2007-10-16 09:43:00 -07:00
slab_def.h
Slab allocators: Cleanup zeroing allocations
2007-07-17 10:23:01 -07:00
slob_def.h
slob: Kill off duplicate kzalloc() definition.
2007-07-17 17:26:43 -07:00
slub_def.h
SLUB: direct pass through of page size or higher kmalloc requests
2007-10-16 09:42:53 -07:00
sm501-regs.h
sm501.h
smb.h
smb_fs.h
smb_fs_i.h
smb_fs_sb.h
smb_mount.h
smbno.h
smp.h
smp_call_function_single() should be a macro on UP
2007-07-17 14:39:19 -07:00
smp_lock.h
Remove unnecessary includes of spinlock.h under include/linux
2007-07-16 09:05:42 -07:00
snmp.h
[TCP] MIB: Count FRTO's successfully detected spurious RTOs
2007-10-10 16:52:39 -07:00
socket.h
O_CLOEXEC for SCM_RIGHTS
2007-07-16 09:05:45 -07:00
sockios.h
som.h
sonet.h
sony-laptop.h
sonypi.h
remove sonypi_camera_command()
2007-07-16 09:05:46 -07:00
sort.h
sound.h
soundcard.h
spinlock.h
introduce write_trylock_irqsave()
2007-07-16 09:05:40 -07:00
spinlock_api_smp.h
spinlock_api_up.h
spinlock_types.h
fix raw_spinlock_t vs lockdep
2007-07-19 10:04:49 -07:00
spinlock_types_up.h
fix raw_spinlock_t vs lockdep
2007-07-19 10:04:49 -07:00
spinlock_up.h
splice.h
srcu.h
stacktrace.h
stacktrace: fix header file for !CONFIG_STACKTRACE
2007-07-19 10:04:49 -07:00
stallion.h
long vs. unsigned long - low-hanging fruits in drivers
2007-10-14 12:41:51 -07:00
start_kernel.h
stat.h
statfs.h
stddef.h
stop_machine.h
string.h
add argv_split()
2007-07-18 08:47:40 -07:00
stringify.h
superhyway.h
suspend.h
Introduce CONFIG_SUSPEND for suspend-to-Ram and standby
2007-07-29 16:45:38 -07:00
svga.h
swap.h
Drop 'size' argument from bio_endio and bi_end_io
2007-10-10 09:25:57 +02:00
swapops.h
synclink.h
sys.h
syscalls.h
[CELL] spufs: extension of spu_create to support affinity definition
2007-07-20 21:42:15 +02:00
sysctl.h
Add CTL_PROC back
2007-07-31 15:39:39 -07:00
sysdev.h
sysfs: kill unnecessary attribute->owner
2007-07-11 16:09:06 -07:00
sysfs.h
sysfs: add copyrights
2007-10-12 14:51:12 -07:00
sysrq.h
sysv_fs.h
task_io_accounting.h
task_io_accounting_ops.h
taskstats.h
taskstats: add context-switch counters
2007-07-16 09:05:46 -07:00
taskstats_kern.h
tc.h
tcp.h
[TCP]: Make snd_cwnd_cnt 32-bit
2007-10-15 12:59:43 -07:00
telephony.h
termios.h
textsearch.h
textsearch_fsm.h
tfrc.h
thread_info.h
threads.h
ticable.h
tick.h
tifm.h
time.h
Cache xtime every call to update_wall_time
2007-07-25 10:17:44 -07:00
timer.h
Add a flag to indicate deferrable timers in /proc/timer_stats
2007-07-16 09:05:45 -07:00
timerfd.h
times.h
timex.h
[IA64] remove time interpolator
2007-07-20 11:23:02 -07:00
tiocl.h
tipc.h
tipc_config.h
topology.h
sched: enable wake-idle on CONFIG_SCHED_MC=y
2007-10-15 17:00:19 +02:00
toshiba.h
transport_class.h
trdevice.h
tsacct_kern.h
tty.h
PTY: add kernel parameter to overwrite legacy pty count
2007-10-12 14:51:09 -07:00
tty_driver.h
tty_flip.h
tty_ldisc.h
types.h
uaccess.h
udf_fs.h
udf_fs_i.h
udf_fs_sb.h
udp.h
[UDP]: Introduce UDP encapsulation type for L2TP
2007-07-10 22:15:57 -07:00
ufs_fs.h
ufs_fs_i.h
ufs_fs_sb.h
uinput.h
uio.h
remove odd and misleading comments from uio.h
2007-07-16 09:05:45 -07:00
uio_driver.h
UIO: Add the User IO core code
2007-07-18 15:57:15 -07:00
ultrasound.h
un.h
unistd.h
unwind.h
usb.h
USB: skip autosuspended devices during system resume
2007-10-12 14:55:34 -07:00
usb_usual.h
usbdevice_fs.h
user.h
user_namespace.h
Convert uid hash to hlist
2007-09-19 11:24:18 -07:00
utime.h
uts.h
utsname.h
namespace: ensure clone_flags are always stored in an unsigned long
2007-07-16 09:05:48 -07:00
vermagic.h
vfs.h
via.h
video_decoder.h
video_encoder.h
video_output.h
Convert from class_device to device for drivers/video
2007-10-12 14:51:04 -07:00
videodev.h
videodev2.h
V4L/DVB (6108): videodev2.h: add new pixel formats for the cx23415 OSD
2007-10-09 22:07:04 -03:00
videotext.h
vmalloc.h
i386: fix iounmap's use of vm_struct's size field
2007-07-21 18:37:14 -07:00
vmstat.h
Create the ZONE_MOVABLE zone
2007-07-17 10:22:59 -07:00
vt.h
vt_buffer.h
vt_kern.h
vt: add comment for unbind_con_driver()
2007-07-17 10:23:11 -07:00
wait.h
wanrouter.h
watchdog.h
wireless.h
workqueue.h
make cancel_xxx_work_sync() return a boolean
2007-07-16 09:05:51 -07:00
writeback.h
Merge git://git.linux-nfs.org/pub/linux/nfs-2.6
2007-10-15 10:47:35 -07:00
x25.h
xattr.h
xfrm.h
xilinxfb.h
[POWERPC] XilinxFB: Allow fixed framebuffer base address
2007-10-12 14:05:17 +10:00
yam.h
zconf.h
zlib.h
[ZLIB]: Move bnx2 driver gzip unpacker into zlib.
2007-10-10 16:53:57 -07:00
zorro.h
zorro_ids.h
zutil.h